Class: Invoker::CLI

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

Defined Under Namespace

Classes: Pinger, Question, Tail, TailWatcher

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.start(*args) ⇒ Object



6
7
8
9
10
11
12
13
# File 'lib/invoker/cli.rb', line 6

def self.start(*args)
  cli_args = args.flatten
  # If it is not a valid task, it is probably file argument
  if default_start_command?(cli_args)
    args = [cli_args.unshift("start")]
  end
  super(*args)
end

Instance Method Details

#add(name) ⇒ Object



53
54
55
# File 'lib/invoker/cli.rb', line 53

def add(name)
  unix_socket.send_command('add', process_name: name)
end

#add_http(name, port, ip = nil) ⇒ Object



58
59
60
# File 'lib/invoker/cli.rb', line 58

def add_http(name, port, ip = nil)
  unix_socket.send_command('add_http', process_name: name, port: port, ip: ip)
end

#listObject



78
79
80
81
82
# File 'lib/invoker/cli.rb', line 78

def list
  unix_socket.send_command('list') do |response_object|
    Invoker::ProcessPrinter.new(response_object).tap { |printer| printer.print_table }
  end
end

#reload(name) ⇒ Object



72
73
74
75
# File 'lib/invoker/cli.rb', line 72

def reload(name)
  signal = options[:signal] || 'INT'
  unix_socket.send_command('reload', process_name: name, signal: signal)
end

#remove(name) ⇒ Object



88
89
90
91
# File 'lib/invoker/cli.rb', line 88

def remove(name)
  signal = options[:signal] || 'INT'
  unix_socket.send_command('remove', process_name: name, signal: signal)
end

#setupObject



19
20
21
# File 'lib/invoker/cli.rb', line 19

def setup
  Invoker::Power::Setup.install(get_tld(options))
end

#start(file = nil) ⇒ Object



40
41
42
43
44
45
46
47
48
49
50
# File 'lib/invoker/cli.rb', line 40

def start(file = nil)
  Invoker.setup_config_location
  port = options[:port] || 9000
  Invoker.daemonize = options[:daemon]
  Invoker.load_invoker_config(file, port)
  warn_about_notification
  warn_about_old_configuration
  pinger = Invoker::CLI::Pinger.new(unix_socket)
  abort("Invoker is already running".color(:red)) if pinger.invoker_running?
  Invoker.commander.start_manager
end

#stopObject



94
95
96
# File 'lib/invoker/cli.rb', line 94

def stop
  Invoker.daemon.stop
end

#tail(*names) ⇒ Object



63
64
65
66
# File 'lib/invoker/cli.rb', line 63

def tail(*names)
  tailer = Invoker::CLI::Tail.new(names)
  tailer.run
end

#uninstallObject



30
31
32
# File 'lib/invoker/cli.rb', line 30

def uninstall
  Invoker::Power::Setup.uninstall
end

#versionObject



24
25
26
# File 'lib/invoker/cli.rb', line 24

def version
  Invoker::Logger.puts Invoker::VERSION
end