Class: Catfish::CLI

Inherits:
Thor
  • Object
show all
Includes:
Thor::Actions
Defined in:
lib/catfish/cli.rb,
lib/catfish/cli/init.rb

Defined Under Namespace

Classes: Init, Provision, Resolve

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ CLI

def self.start(*) super rescue Exception => e Bundler.ui = UI::Shell.new raise e ensure Bundler.cleanup end



17
18
19
20
21
22
23
# File 'lib/catfish/cli.rb', line 17

def initialize(*args)
  super
rescue UnknownArgumentError => e
  raise InvalidOption, e.message
ensure
  self.options ||= {}
end

Class Method Details

.source_rootObject



25
26
27
# File 'lib/catfish/cli.rb', line 25

def self.source_root
  File.expand_path(File.join(File.dirname(__FILE__), 'templates'))
end

Instance Method Details

#initObject



37
38
39
40
# File 'lib/catfish/cli.rb', line 37

def init
  require 'catfish/cli/init'
  Init.new(options.dup, self).run
end

#provisionObject



51
52
53
54
55
# File 'lib/catfish/cli.rb', line 51

def provision
  invoke :resolve
  require 'catfish/cli/provision'
  Provision.new(options.dup).run
end

#resolveObject



43
44
45
46
# File 'lib/catfish/cli.rb', line 43

def resolve
  require 'catfish/cli/resolve'
  Resolve.new(options.dup, self).run
end