Implementation

Delete Default Manifests


delete-default-manifests.tpl (view on GitHub) :

{{ $workloadNames := keys .Workloads }}
{{/* range in reverse order */}}
{{ range $i, $m := (reverse .Manifests) }}
{{/* just delete the Deployment and Service of the Workloads generated by default */}}
{{ if and (or (eq $m.kind "Deployment") (eq $m.kind "Service")) (has $m.metadata.name $workloadNames) }}
{{/* fix the index to be reversed as well */}}
{{ $i := sub (len $.Manifests) (add $i 1) }}
- op: delete
  path: {{ $i }}
{{ end }}
{{ end }}