class Gemcon::Cli
Private Class Methods
source_root()
click to toggle source
# File lib/gemcon/cli.rb, line 43 def source_root Pathname.new(__FILE__).join('../../../templates') end
Public Instance Methods
new(app_name = nil)
click to toggle source
# File lib/gemcon/cli.rb, line 9 def new(app_name = nil) raise Error, 'Usage: gemcon new [APP_NAME]' if app_name.nil? path = File.expand_path(app_name) raise( Error, set_color("ERROR: #{path} already exists.", :red) ) if File.exist?(path) @app_name = app_name generate end
version()
click to toggle source
# File lib/gemcon/cli.rb, line 24 def version say "Gemcon #{VERSION}" end
Private Instance Methods
generate()
click to toggle source
# File lib/gemcon/cli.rb, line 30 def generate template('Gemfile.tt', 'Gemfile') template('app/project.tt', "app/#{@app_name}.rb") template('config/boot.tt', 'config/boot.rb') template('bin/console', 'bin/console') chmod "#{@app_name}/bin/console", 0o755 end
template(template, filename)
click to toggle source
Calls superclass method
# File lib/gemcon/cli.rb, line 38 def template(template, filename) super(template, "#{@app_name}/#{filename}") end