Class: LittleMonster::Cli

Inherits:
Thor
  • Object
show all
Defined in:
lib/little_monster/generators/cli.rb

Instance Method Summary collapse

Instance Method Details

#exec(job) ⇒ Object



34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# File 'lib/little_monster/generators/cli.rb', line 34

def exec(job)
  ENV['LITTLE_MONSTER_ENV'] = options[:environment]
  require_relative "#{Dir.pwd}/config/application.rb"
  require 'webmock'
  require 'vcr'

  msg = MultiJson.load(options[:message], symbolize_keys: true)
  params = { data: { outputs: msg }, name: job }
  vcr_mode = { 'none' => :none,
               'new' => :new_episodes,
               'reload' => :all }.fetch(options[:record_mode], :none)
  VCR.configure do |config|
    config.cassette_library_dir = 'mocks/vcr_cassettes'
    config.hook_into :webmock # or :fakeweb
  end

  VCR.use_cassette(job.to_s, record: vcr_mode) do
    LittleMonster::Runner.new(params).run
  end
end

#startObject



61
62
63
64
65
66
67
# File 'lib/little_monster/generators/cli.rb', line 61

def start
  require_relative "#{Dir.pwd}/config/application.rb"

  toiler_args = ['-C', "#{Dir.pwd}/config/toiler.yml"]
  toiler_args += ['-d', '-L', 'log/little_monster.log'] if options[:daemonize]
  Toiler::CLI.instance.run(toiler_args)
end

#versionObject



10
11
12
# File 'lib/little_monster/generators/cli.rb', line 10

def version
  say LittleMonster::VERSION
end