class Tennpipes::Generators::Cli
This class bootstrap config/boot
and perform Tennpipes::Generators.load_components!
for handle 3rd party generators.
Public Instance Methods
load_boot()
click to toggle source
We need to try to load boot because some of our app dependencies maybe have custom generators, so is necessary know who are.
# File lib/tennpipes-init/generators/cli.rb, line 20 def load_boot begin ENV['TENNPIPES_LOG_LEVEL'] ||= 'test' ENV['BUNDLE_GEMFILE'] = File.join(options[:root], 'Gemfile') if options[:root] boot = options[:root] ? File.join(options[:root], 'config/boot.rb') : 'config/boot.rb' if File.exist?(boot) require File.expand_path(boot) else require 'tennpipes-assist' end rescue StandardError => e puts "=> Problem loading #{boot}" puts ["=> #{e.message}", *e.backtrace].join("\n ") ensure ENV.delete('BUNDLE_GEMFILE') ENV.delete('TENNPIPES_LOG_LEVEL') end end
setup()
click to toggle source
Loads the components available for all generators.
# File lib/tennpipes-init/generators/cli.rb, line 42 def setup Tennpipes::Generators.load_components! generator_kind = ARGV.delete_at(0).to_s.downcase.to_sym if ARGV[0].present? generator_class = Tennpipes::Generators.mappings[generator_kind] if generator_class args = ARGV.empty? && generator_class.require_arguments? ? ['-h'] : ARGV generator_class.start(args) else puts "Please specify generator to use (#{Tennpipes::Generators.mappings.keys.join(", ")})" end end