Module: MKIt::ServicesHelper

Defined in:
lib/mkit/app/helpers/services_helper.rb

Instance Method Summary collapse

Instance Method Details

#_format(template, data) ⇒ Object



11
12
13
# File 'lib/mkit/app/helpers/services_helper.rb', line 11

def _format(template, data)
  template % data
end

#find_by_id_or_nameObject



46
47
48
49
50
51
# File 'lib/mkit/app/helpers/services_helper.rb', line 46

def find_by_id_or_name
  srv = Service.find_by_id(params[:id])
  srv = Service.find_by_name(params[:id]) unless srv
  error 404, "Couldn't find Service '#{params[:id]}'\n" unless srv
  srv
end

#format_response(data, verbose = false) ⇒ Object



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/mkit/app/helpers/services_helper.rb', line 15

def format_response(data, verbose = false)
  resp = []
  header = _format(str_template, header_template)
  resp << header
  if data.respond_to?"each"
    data.each { | srv |
      ports = srv.service_port&.each.map { |p| "#{p.mode}/#{p.external_port}"}.join(",")
      resp << _format(str_template, [srv.id, srv.name, srv.lease&.ip, ports, srv.status])
      resp+=service_pods(srv) if verbose
    }
  else
    ports = data.service_port&.each.map { |p| "#{p.mode}/#{p.external_port}"}.join(",")
    resp << _format(str_template, [data.id, data.name, data.lease&.ip, ports, data.status])
    resp+=service_pods(data)
  end
  resp << ""
  resp.join("\n")
end

#header_templateObject



7
8
9
# File 'lib/mkit/app/helpers/services_helper.rb', line 7

def header_template
  ["id", "name", "addr", "ports", "status"]
end

#service_pods(srv) ⇒ Object



34
35
36
37
38
39
40
41
42
43
44
# File 'lib/mkit/app/helpers/services_helper.rb', line 34

def service_pods(srv)
  resp=[]
  resp << "  pods"
  resp << _format("    %-5s   %-15s   %-15s   %-15s   %-10s", ["id", "pod_id", "pod_name", "pod_ip", "status"])
  srv.pod.each { |pod|
    name = pod.name.nil? ? "" : pod.name[0..11]
    pod_id = pod.pod_id.nil? ? "" : pod.pod_id[0..11]
    resp << _format("    %-5s   %-15s   %-15s   %-15s   %-10s", [pod.id, pod_id, name, pod.ip, pod.status])
  }
  resp
end

#str_templateObject



3
4
5
# File 'lib/mkit/app/helpers/services_helper.rb', line 3

def str_template
  "%-5s   %-18s   %-15s  %-25s  %-10s"
end