Previously our helm charts would render out Kubernetes objects the same way that calling json.Marshal would. This causes our charts to include the zero value for most .Status fields which is generally excluded from distributed manifests. It's been reported that ArgoCD will attempt to reconcile .status if specified and constantly report the resource as being out of sync.
An invariant of gotohelm is that it produces the same output as the provided go package. Rather than attempting to break this invariant, this commit bundles a new helper into _shims.tpl, _shims.render-manifest, for rendering the results of gotohelm templates which will remove status and creationTimestamp before rendering the object to YAML.
This commit also renames all .go.tpl files to begin with an _ as is expected of partial templates.
Previously our helm charts would render out Kubernetes objects the same way that calling
json.Marshal
would. This causes our charts to include the zero value for most.Status
fields which is generally excluded from distributed manifests. It's been reported that ArgoCD will attempt to reconcile.status
if specified and constantly report the resource as being out of sync.An invariant of gotohelm is that it produces the same output as the provided go package. Rather than attempting to break this invariant, this commit bundles a new helper into
_shims.tpl
,_shims.render-manifest
, for rendering the results of gotohelm templates which will removestatus
andcreationTimestamp
before rendering the object to YAML.This commit also renames all
.go.tpl
files to begin with an_
as is expected of partial templates.Fixes #1458