Module: VMC::Cli::ServicesHelper

Included in:
Command::Services
Defined in:
lib/cli/services_helper.rb

Instance Method Summary collapse

Instance Method Details

#bind_service_banner(service, appname, check_restart = true) ⇒ Object



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

def bind_service_banner(service, appname, check_restart=true)
  display "Binding Service: ", false
  client.bind_service(service, appname)
  display 'OK'.green
  check_app_for_restart(appname) if check_restart
end

#check_app_for_restart(appname) ⇒ Object



67
68
69
70
71
# File 'lib/cli/services_helper.rb', line 67

def check_app_for_restart(appname)
  app = client.app_info(appname)
  cmd = VMC::Cli::Command::Apps.new(@options)
  cmd.restart(appname) if app[:state] == 'STARTED'
end

#create_service_banner(service, name, display_name = false) ⇒ Object



41
42
43
44
45
46
# File 'lib/cli/services_helper.rb', line 41

def create_service_banner(service, name, display_name=false)
  sn = " [#{name}]" if display_name
  display "Creating Service#{sn}: ", false
  client.create_service(service, name)
  display 'OK'.green
end

#display_provisioned_services(services = nil) ⇒ Object



24
25
26
27
28
# File 'lib/cli/services_helper.rb', line 24

def display_provisioned_services(services=nil)
  services ||= client.services
  display "\n=========== Provisioned Services ============\n\n"
  display_provisioned_services_table(services)
end

#display_provisioned_services_table(services) ⇒ Object



30
31
32
33
34
35
36
37
38
39
# File 'lib/cli/services_helper.rb', line 30

def display_provisioned_services_table(services)
  return unless services && !services.empty?
  services_table = table do |t|
    t.headings = 'Name', 'Service'
    services.each do |service|
      t << [ service[:name], service[:vendor] ]
    end
  end
  display services_table
end

#display_system_services(services = nil) ⇒ Object



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/cli/services_helper.rb', line 4

def display_system_services(services=nil)
  services ||= client.services_info

  display "\n============== System Services ==============\n\n"

  return display "No system services available" if services.empty?

  services_table = table do |t|
    t.headings = 'Service', 'Version', 'Description'
    services.each do |service_type, value|
      value.each do |vendor, version|
        version.each do |version_str, service|
          t << [ vendor, version_str, service[:description] ]
        end
      end
    end
  end
  display services_table
end

#random_service_name(service) ⇒ Object



62
63
64
65
# File 'lib/cli/services_helper.rb', line 62

def random_service_name(service)
  r = "%04x" % [rand(0x0100000)]
  "#{service.to_s}-#{r}"
end

#unbind_service_banner(service, appname, check_restart = true) ⇒ Object



55
56
57
58
59
60
# File 'lib/cli/services_helper.rb', line 55

def unbind_service_banner(service, appname, check_restart=true)
  display "Unbinding Service: ", false
  client.unbind_service(service, appname)
  display 'OK'.green
  check_app_for_restart(appname) if check_restart
end