Sha256: a3d11dcc2e743100daa0bce49d7e9764f509c6e30f7c6b6dd53f24476c1b25c4
Contents?: true
Size: 1.73 KB
Versions: 5
Compression:
Stored size: 1.73 KB
Contents
$:.unshift File.dirname(__FILE__) %w[ rubygems optparse erb tempfile ].each { |f| require f } module Ubiquo autoload :Options, 'ubiquo/options' autoload :Generator, 'ubiquo/generator' class App class << self def run!(arguments) env_opts = Options.new(ENV['UBIQUO_OPTS'].split(' ')) if ENV['UBIQUO_OPTS'] options = Options.new(arguments) options = options.merge(env_opts) if env_opts # We need this because sometimes we upgrade edge but no stable options[:rails] = options[:template] == :edge ? '2.3.14' : '2.3.14' unless Gem.available?('rails', options[:rails]) $stderr.puts "Sorry ubiquo needs rails #{options[:rails]} to work properly." options[:show_help] = true end if `which git` == '' $stderr.puts "Sorry you need to install git (> 1.5.3). See http://git-scm.com/" options[:show_help] = true end if options[:version] $stdout.puts options[:version] return 0 end if options[:invalid_argument] $stderr.puts options[:invalid_argument] options[:show_help] = true end if options[:show_help] $stderr.puts options.opts return 1 end if options[:app_name].nil? || options[:app_name].squeeze.strip == "" $stderr.puts options.opts return 1 end skeleton = File.dirname(__FILE__) + "/ubiquo/template.erb" tpl = Tempfile.new('tmp') File.open(tpl.path, 'w') do |file| file.write Generator.build_template(options, skeleton) end tpl.sync=true system("rails _#{options[:rails]}_ -m #{tpl.path} #{options[:app_name]}") end end end end
Version data entries
5 entries across 5 versions & 1 rubygems
Version | Path |
---|---|
ubiquo-0.6.3 | lib/ubiquo.rb |
ubiquo-0.5.5 | lib/ubiquo.rb |
ubiquo-0.5.4 | lib/ubiquo.rb |
ubiquo-0.5.3 | lib/ubiquo.rb |
ubiquo-0.5.2 | lib/ubiquo.rb |