Sha256: 58bbafd292dd3798312fe28c02333da13cc36712818154e0e29636f8d5e3aef3

Contents?: true

Size: 1.06 KB

Versions: 3

Compression:

Stored size: 1.06 KB

Contents

require 'rack'
require 'rack/blogengine'

module Rack
  module Blogengine
    class CommandLineInterface
    	# Method to run the cli command
    	# @param [String] target
    	def run(target)
    	  unless target.empty? 
            $targetfolder = target
            app = Rack::Builder.new do
              use Rack::CommonLogger
              use Rack::ShowExceptions

              map "/assets" do
                run Rack::Directory.new("#{$targetfolder}/assets")
              end

              use Rack::Lint
              run Rack::Blogengine::Application
            end

            Rack::Server.start( :app => app, :Port => 3000 )
          else 
            puts "Specify a targetfolder!"
          end
    	end

    	# TODO write generate method to generate blog skeleton (assets, layout etc)
    	def generate(folder)
        puts "Generating folder skeleton"
        system("mkdir #{folder} && mkdir #{folder}/assets && mkdir #{folder}/assets/layout && mkdir #{folder}/assets/js && mkdir #{folder}/assets/style && mkdir #{folder}/assets/images")
    	end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rack-blogengine-0.1.0 lib/rack/blogengine/command_line_interface.rb
rack-blogengine-0.0.9 lib/rack/blogengine/command_line_interface.rb
rack-blogengine-0.0.8 lib/rack/blogengine/command_line_interface.rb