Class: ControlplaneApi
- Inherits:
-
Object
- Object
- ControlplaneApi
- Defined in:
- lib/core/controlplane_api.rb
Overview
rubocop:disable Metrics/ClassLength
Instance Method Summary collapse
- #delete_policy(org:, policy:) ⇒ Object
- #delete_secret(org:, secret:) ⇒ Object
- #delete_volumeset(org:, gvc:, volumeset:) ⇒ Object
- #delete_workload(org:, gvc:, workload:) ⇒ Object
- #fetch_domain(org:, domain:) ⇒ Object
- #fetch_identity(org:, gvc:, identity:) ⇒ Object
- #fetch_image_details(org:, image:) ⇒ Object
- #fetch_policy(org:, policy:) ⇒ Object
- #fetch_secret(org:, secret:) ⇒ Object
- #gvc_delete(org:, gvc:) ⇒ Object
- #gvc_get(org:, gvc:) ⇒ Object
- #gvc_list(org:) ⇒ Object
- #image_delete(org:, image:) ⇒ Object
- #list_domains(org:) ⇒ Object
- #list_orgs ⇒ Object
- #list_volumesets(org:, gvc:) ⇒ Object
-
#log_get(org:, gvc:, workload: nil, replica: nil, from: nil, to: nil) ⇒ Object
rubocop:disable Metrics/ParameterLists.
- #query_images(org:, gvc:, gvc_op_type:) ⇒ Object
-
#query_workloads(org:, gvc:, workload:, gvc_op_type:, workload_op_type:) ⇒ Object
rubocop:disable Metrics/MethodLength.
- #update_domain(org:, domain:, data:) ⇒ Object
- #update_workload(org:, gvc:, workload:, data:) ⇒ Object
- #workload_deployments(org:, gvc:, workload:) ⇒ Object
- #workload_get(org:, gvc:, workload:) ⇒ Object
- #workload_list(org:, gvc:) ⇒ Object
- #workload_list_by_org(org:) ⇒ Object
Instance Method Details
#delete_policy(org:, policy:) ⇒ Object
135 136 137 |
# File 'lib/core/controlplane_api.rb', line 135 def delete_policy(org:, policy:) api_json("/org/#{org}/policy/#{policy}", method: :delete) end |
#delete_secret(org:, secret:) ⇒ Object
123 124 125 |
# File 'lib/core/controlplane_api.rb', line 123 def delete_secret(org:, secret:) api_json("/org/#{org}/secret/#{secret}", method: :delete) end |
#delete_volumeset(org:, gvc:, volumeset:) ⇒ Object
103 104 105 |
# File 'lib/core/controlplane_api.rb', line 103 def delete_volumeset(org:, gvc:, volumeset:) api_json("/org/#{org}/gvc/#{gvc}/volumeset/#{volumeset}", method: :delete) end |
#delete_workload(org:, gvc:, workload:) ⇒ Object
95 96 97 |
# File 'lib/core/controlplane_api.rb', line 95 def delete_workload(org:, gvc:, workload:) api_json("/org/#{org}/gvc/#{gvc}/workload/#{workload}", method: :delete) end |
#fetch_domain(org:, domain:) ⇒ Object
107 108 109 |
# File 'lib/core/controlplane_api.rb', line 107 def fetch_domain(org:, domain:) api_json("/org/#{org}/domain/#{domain}", method: :get) end |
#fetch_identity(org:, gvc:, identity:) ⇒ Object
127 128 129 |
# File 'lib/core/controlplane_api.rb', line 127 def fetch_identity(org:, gvc:, identity:) api_json("/org/#{org}/gvc/#{gvc}/identity/#{identity}", method: :get) end |
#fetch_image_details(org:, image:) ⇒ Object
32 33 34 |
# File 'lib/core/controlplane_api.rb', line 32 def fetch_image_details(org:, image:) api_json("/org/#{org}/image/#{image}", method: :get) end |
#fetch_policy(org:, policy:) ⇒ Object
131 132 133 |
# File 'lib/core/controlplane_api.rb', line 131 def fetch_policy(org:, policy:) api_json("/org/#{org}/policy/#{policy}", method: :get) end |
#fetch_secret(org:, secret:) ⇒ Object
119 120 121 |
# File 'lib/core/controlplane_api.rb', line 119 def fetch_secret(org:, secret:) api_json("/org/#{org}/secret/#{secret}", method: :get) end |
#gvc_delete(org:, gvc:) ⇒ Object
16 17 18 |
# File 'lib/core/controlplane_api.rb', line 16 def gvc_delete(org:, gvc:) api_json("/org/#{org}/gvc/#{gvc}", method: :delete) end |
#gvc_get(org:, gvc:) ⇒ Object
12 13 14 |
# File 'lib/core/controlplane_api.rb', line 12 def gvc_get(org:, gvc:) api_json("/org/#{org}/gvc/#{gvc}", method: :get) end |
#gvc_list(org:) ⇒ Object
8 9 10 |
# File 'lib/core/controlplane_api.rb', line 8 def gvc_list(org:) api_json("/org/#{org}/gvc", method: :get) end |
#image_delete(org:, image:) ⇒ Object
36 37 38 |
# File 'lib/core/controlplane_api.rb', line 36 def image_delete(org:, image:) api_json("/org/#{org}/image/#{image}", method: :delete) end |
#list_domains(org:) ⇒ Object
111 112 113 |
# File 'lib/core/controlplane_api.rb', line 111 def list_domains(org:) api_json("/org/#{org}/domain", method: :get) end |
#list_orgs ⇒ Object
4 5 6 |
# File 'lib/core/controlplane_api.rb', line 4 def list_orgs api_json("/org", method: :get) end |
#list_volumesets(org:, gvc:) ⇒ Object
99 100 101 |
# File 'lib/core/controlplane_api.rb', line 99 def list_volumesets(org:, gvc:) api_json("/org/#{org}/gvc/#{gvc}/volumeset", method: :get) end |
#log_get(org:, gvc:, workload: nil, replica: nil, from: nil, to: nil) ⇒ Object
rubocop:disable Metrics/ParameterLists
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/core/controlplane_api.rb', line 40 def log_get(org:, gvc:, workload: nil, replica: nil, from: nil, to: nil) # rubocop:disable Metrics/ParameterLists query = { gvc: gvc } query[:workload] = workload if workload query[:replica] = replica if replica query = query.map { |k, v| %(#{k}="#{v}") }.join(",").then { "{#{_1}}" } params = { query: query } params[:from] = "#{from}000000000" if from params[:to] = "#{to}000000000" if to params[:limit] = "5000" # params << "delay_for=0" # params << "limit=30" # params << "direction=forward" params = params.map { |k, v| %(#{k}=#{CGI.escape(v)}) }.join("&") api_json("/logs/org/#{org}/loki/api/v1/query_range?#{params}", method: :get, host: :logs) end |
#query_images(org:, gvc:, gvc_op_type:) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/core/controlplane_api.rb', line 20 def query_images(org:, gvc:, gvc_op_type:) terms = [ { property: "repository", op: gvc_op_type, value: gvc } ] query("/org/#{org}/image", terms) end |
#query_workloads(org:, gvc:, workload:, gvc_op_type:, workload_op_type:) ⇒ Object
rubocop:disable Metrics/MethodLength
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/core/controlplane_api.rb', line 58 def query_workloads(org:, gvc:, workload:, gvc_op_type:, workload_op_type:) # rubocop:disable Metrics/MethodLength terms = [ { rel: "gvc", op: gvc_op_type, value: gvc }, { property: "name", op: workload_op_type, value: workload } ] query("/org/#{org}/workload", terms) end |
#update_domain(org:, domain:, data:) ⇒ Object
115 116 117 |
# File 'lib/core/controlplane_api.rb', line 115 def update_domain(org:, domain:, data:) api_json("/org/#{org}/domain/#{domain}", method: :patch, body: data) end |
#update_workload(org:, gvc:, workload:, data:) ⇒ Object
87 88 89 |
# File 'lib/core/controlplane_api.rb', line 87 def update_workload(org:, gvc:, workload:, data:) api_json("/org/#{org}/gvc/#{gvc}/workload/#{workload}", method: :patch, body: data) end |
#workload_deployments(org:, gvc:, workload:) ⇒ Object
91 92 93 |
# File 'lib/core/controlplane_api.rb', line 91 def workload_deployments(org:, gvc:, workload:) api_json("/org/#{org}/gvc/#{gvc}/workload/#{workload}/deployment", method: :get) end |
#workload_get(org:, gvc:, workload:) ⇒ Object
83 84 85 |
# File 'lib/core/controlplane_api.rb', line 83 def workload_get(org:, gvc:, workload:) api_json("/org/#{org}/gvc/#{gvc}/workload/#{workload}", method: :get) end |
#workload_list(org:, gvc:) ⇒ Object
75 76 77 |
# File 'lib/core/controlplane_api.rb', line 75 def workload_list(org:, gvc:) api_json("/org/#{org}/gvc/#{gvc}/workload", method: :get) end |
#workload_list_by_org(org:) ⇒ Object
79 80 81 |
# File 'lib/core/controlplane_api.rb', line 79 def workload_list_by_org(org:) api_json("/org/#{org}/workload", method: :get) end |