class Kubes::Compiler::Dsl::Syntax::Resource
Attributes
kind_from_block[RW]
Public Instance Methods
default_apiVersion()
click to toggle source
# File lib/kubes/compiler/dsl/syntax/resource.rb, line 45 def default_apiVersion "v1" end
default_kind()
click to toggle source
# File lib/kubes/compiler/dsl/syntax/resource.rb, line 58 def default_kind return @kind_from_block if @kind_from_block normalize_kind(@path) end
Also aliased as: resource_kind
default_metadata()
click to toggle source
# File lib/kubes/compiler/dsl/syntax/resource.rb, line 49 def default_metadata { annotations: annotations, name: name, labels: labels, namespace: namespace, } end
default_result()
click to toggle source
top-level of resource is quite common
# File lib/kubes/compiler/dsl/syntax/resource.rb, line 19 def default_result data = top.merge(default_top) Kubes.deep_merge!(data, default_result_append) data.deep_stringify_keys! HashSqueezer.squeeze(data) end
default_result_append()
click to toggle source
can be overridden by subclasses. IE: secret
# File lib/kubes/compiler/dsl/syntax/resource.rb, line 41 def default_result_append {} end
default_top()
click to toggle source
# File lib/kubes/compiler/dsl/syntax/resource.rb, line 31 def default_top { apiVersion: apiVersion, kind: kind, metadata: metadata, spec: spec, } end
field(name, data)
click to toggle source
For generic kind
# File lib/kubes/compiler/dsl/syntax/resource.rb, line 65 def field(name, data) Kubes.deep_merge!(top, {name => data}) end
top()
click to toggle source
Where to set fields for generic kind
# File lib/kubes/compiler/dsl/syntax/resource.rb, line 27 def top @top ||= {} end