Class: Kustomize::Emitter::FinalizerEmitter

Inherits:
Kustomize::Emitter show all
Defined in:
lib/kustomize/emitter/finalizer_emitter.rb

Instance Method Summary collapse

Methods inherited from Kustomize::Emitter

#input_resources, #inspect, #to_yaml_stream

Constructor Details

#initialize(input_emitter, session:) ⇒ FinalizerEmitter

Returns a new instance of FinalizerEmitter.



11
12
13
14
# File 'lib/kustomize/emitter/finalizer_emitter.rb', line 11

def initialize(input_emitter, session:)
  @input_emitter = input_emitter
  @session = session
end

Instance Method Details

#emitObject



40
41
42
43
44
# File 'lib/kustomize/emitter/finalizer_emitter.rb', line 40

def emit
  self.transforms.inject(self.input_resources) do |rcs, xform|
    xform.rewrite_all(rcs)
  end
end

#input_emittersObject



16
17
18
# File 'lib/kustomize/emitter/finalizer_emitter.rb', line 16

def input_emitters
  [@input_emitter]
end

#transformsObject



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/kustomize/emitter/finalizer_emitter.rb', line 20

def transforms
  return @transforms if @transforms

  final_filters =
    if comp = @session.only_emit_component
      [Kustomize::Transform::FilterForSessionSpecifiedComponentTransform.create(comp)]
    else
      []
    end

  @transforms = [
    Kustomize::Transform::FingerprintSuffixTransform.instance,
    Kustomize::Transform::RefFixupTransform.instance,
    final_filters,
    Kustomize::Transform::DropFilteredDocumentsTransform.instance,
    Kustomize::Transform::PurgeInternalAnnotationsTransform.instance,
    Kustomize::Transform::ApplicationOrderTransform.instance
  ].flatten.compact
end