Class: Metatron::Templates::Namespace

Inherits:
Metatron::Template show all
Includes:
Concerns::Annotated
Defined in:
lib/metatron/templates/namespace.rb

Overview

Template for basic Namespace k8s resource

Instance Attribute Summary collapse

Attributes inherited from Metatron::Template

#api_version, #kind, #label_namespace, #name

Instance Method Summary collapse

Methods included from Concerns::Annotated

#annotated_initialize, #formatted_annotations, included

Methods inherited from Metatron::Template

#base_labels, initializer, initializers, metatron_template_class?, nearest_metatron_ancestor

Constructor Details

#initialize(name) ⇒ Namespace

Returns a new instance of Namespace.



11
12
13
14
# File 'lib/metatron/templates/namespace.rb', line 11

def initialize(name)
  super(name)
  @additional_labels = {}
end

Instance Attribute Details

#additional_labelsObject

Returns the value of attribute additional_labels.



9
10
11
# File 'lib/metatron/templates/namespace.rb', line 9

def additional_labels
  @additional_labels
end

Instance Method Details

#renderObject



16
17
18
19
20
21
22
23
24
25
# File 'lib/metatron/templates/namespace.rb', line 16

def render
  {
    apiVersion:,
    kind:,
    metadata: {
      name:,
      labels: base_labels.merge(additional_labels)
    }.merge(formatted_annotations)
  }
end