Sha256: 8824f3eb2e3ef1e2e5cd53965978c9895083779b1a2f5135b11b4cffd03d50cd
Contents?: true
Size: 897 Bytes
Versions: 9
Compression:
Stored size: 897 Bytes
Contents
# frozen_string_literal: true module KubernetesDeploy class ClusterResourceDiscovery def initialize(namespace:, context:, logger:, namespace_tags:) @namespace = namespace @context = context @logger = logger @namespace_tags = namespace_tags end def crds @crds ||= fetch_crds.map do |cr_def| CustomResourceDefinition.new(namespace: @namespace, context: @context, logger: @logger, definition: cr_def, statsd_tags: @namespace_tags) end end private def fetch_crds raw_json, _, st = kubectl.run("get", "CustomResourceDefinition", output: "json", attempts: 5) if st.success? JSON.parse(raw_json)["items"] else [] end end def kubectl @kubectl ||= Kubectl.new(namespace: @namespace, context: @context, logger: @logger, log_failure_by_default: true) end end end
Version data entries
9 entries across 9 versions & 1 rubygems