Method: Exec::ServiceLs#list_services

Defined in:
lib/exec/service_ls.rb

#list_services(cluster_name = , prefix = '') ⇒ Object (private)

list the service for one cluster

Parameters:

  • cluster_name (defaults to: )

    Name of the cluster



68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# File 'lib/exec/service_ls.rb', line 68

def list_services(cluster_name = @values["cluster"], prefix = '')
  @logger.begin_main_step("listServices")
  begin
    output = prefix + "Services available on cluster #{cluster_name}:"
    command = Command::AmbariServiceList.new(cluster_name)
    data = command.exec()

    return prefix + "No service" if data["items"].nil? || data["items"].length == 0

    data["services"] = data["items"].sort { |x, y| x["href"] <=> y["href"] }
    output += "\n"
    data["services"].each do |service|
      output += format_service(service, prefix + "\t")
    end
  rescue => e
    raise e
  end

  @logger.debug("service list output: #{output}")
  @logger.end_main_step("listServices")

  return output
end