Module: Kube::Cluster::Standard::EnvProcessing
- Defined in:
- lib/kube/cluster/standard/env_processing.rb
Class Method Summary collapse
-
.process(env) ⇒ Object
Convert an env hash into a Kubernetes env array.
Class Method Details
.process(env) ⇒ Object
Convert an env hash into a Kubernetes env array.
String/numeric values become plain env vars:
"FOO" => "bar" => { name: "FOO", value: "bar" }
ExternalSecret::TemplateRef values become secretKeyRef env vars and register the template entry on the ExternalSecret:
"FOO" => secret.template("{{ .bar }}")
=> { name: "FOO", valueFrom: { secretKeyRef: { name: "secret-name", key: "FOO" } } }
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/kube/cluster/standard/env_processing.rb', line 20 def self.process(env) return env if env.is_a?(Array) return [] if env.nil? env.map do |key, value| key = key.to_s if value.is_a?(ESO::ExternalSecret::TemplateRef) value.secret.register_template!(key, value.template_value) { name: key, valueFrom: { secretKeyRef: { name: value.secret.secret_name, key: key } } } else { name: key, value: value.to_s } end end end |