Class: BoringServices::CLI

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

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.exit_on_failure?Boolean

Returns:

  • (Boolean)


14
15
16
# File 'lib/boring_services/cli.rb', line 14

def self.exit_on_failure?
  true
end

Instance Method Details

#install(service_name = nil) ⇒ Object



28
29
30
31
32
33
34
35
# File 'lib/boring_services/cli.rb', line 28

def install(service_name = nil)
  config = Configuration.load(options[:config], options[:environment])
  installer = Installer.new(config)
  service_name ? installer.install_service(service_name) : installer.install_all
rescue Error => e
  puts "Error: #{e.message}"
  exit 1
end

#reconfigure(service_name = nil) ⇒ Object



57
58
59
60
61
62
63
64
# File 'lib/boring_services/cli.rb', line 57

def reconfigure(service_name = nil)
  config = Configuration.load(options[:config], options[:environment])
  installer = Installer.new(config)
  service_name ? installer.reconfigure_service(service_name) : installer.reconfigure_all
rescue Error => e
  puts "Error: #{e.message}"
  exit 1
end

#restart(service_name) ⇒ Object



47
48
49
50
51
52
53
# File 'lib/boring_services/cli.rb', line 47

def restart(service_name)
  config = Configuration.load(options[:config], options[:environment])
  Installer.new(config).restart_service(service_name)
rescue Error => e
  puts "Error: #{e.message}"
  exit 1
end

#setupObject



19
20
21
22
23
24
25
# File 'lib/boring_services/cli.rb', line 19

def setup
  config = Configuration.load(options[:config], options[:environment])
  Installer.new(config).install_all
rescue Error => e
  puts "Error: #{e.message}"
  exit 1
end

#statusObject



67
68
69
70
71
72
73
74
75
76
77
78
79
80
# File 'lib/boring_services/cli.rb', line 67

def status
  Configuration.load(options[:config], options[:environment])
  BoringServices.status.each do |service_name, result|
    puts "\n#{service_name}: #{result[:status]}"
    next unless result[:hosts]

    result[:hosts].each do |host_result|
      print_host_status(service_name, host_result)
    end
  end
rescue Error => e
  puts "Error: #{e.message}"
  exit 1
end

#uninstall(service_name) ⇒ Object



38
39
40
41
42
43
44
# File 'lib/boring_services/cli.rb', line 38

def uninstall(service_name)
  config = Configuration.load(options[:config], options[:environment])
  Installer.new(config).uninstall_service(service_name)
rescue Error => e
  puts "Error: #{e.message}"
  exit 1
end

#versionObject



83
84
85
# File 'lib/boring_services/cli.rb', line 83

def version
  puts "boring_services #{VERSION}"
end