Skip to content

spec.Manifest != release.Manifest when helm "lookup" func used in template causing repeat reconcilliation #209

@DreamingRaven

Description

@DreamingRaven

Hey, I have been building a hybrid operator (https://gitlab.com/GeorgeRaven/authentik-manager/-/tree/staging/operator) with the helm controller which attempts to reconcile one of my helm charts (https://gitlab.com/GeorgeRaven/authentik-manager/-/tree/staging/operator/helm-charts/ak).

This works overall however on closer inspection I note that the reconciler is repeatedly trying to reconcile a resource that it later recognizes as being correct or requiring no change. This leads to extremely high resource usage.

I believe this is related to helm lookup functions, and attempting to impute values from already existing resources. The reason I say this is because the affected resource in particular appear to be one of my secrets:

{{- if .Values.secret.generate }}
{{- $existingSecret := (lookup "v1" "Secret" (printf "%s" .Release.Namespace) (printf "%s" .Values.secret.name) ) -}}
apiVersion: v1
kind: Secret
metadata:
  name: {{ .Values.secret.name }}
{{/* If the secret already exists then keep the data else gen new */}}
{{- if $existingSecret }}
  annotations: {{ toJson $existingSecret.metadata.annotations }}
# from existing secret
data: {{ toJson $existingSecret.data }}
{{- else }}
data:
  authJwtToken: {{ default 30 .Values.secret.randLength | int | randAlphaNum | b64enc }}
  authStorageEncryptionKey: {{  default 30 .Values.secret.randLength | int | randAlphaNum | b64enc }}
  ************** several more secrets ************
  {{- end }}
{{- end }}

Which I believe may be affecting this check which is being met causing repeat reconciles:

if specRelease.Manifest != currentRelease.Manifest ||
currentRelease.Info.Status == release.StatusFailed ||
currentRelease.Info.Status == release.StatusSuperseded {
return currentRelease, stateNeedsUpgrade, nil

In contrast the actual actionclient reconciler is likely properly generating an empty patch:

func (c *actionClient) Reconcile(rel *release.Release) error {
infos, err := c.conf.KubeClient.Build(bytes.NewBufferString(rel.Manifest), false)
if err != nil {
return err
}
return infos.Visit(func(expected *resource.Info, err error) error {
if err != nil {
return fmt.Errorf("visit error: %w", err)
}
helper := resource.NewHelper(expected.Client, expected.Mapping)
existing, err := helper.Get(expected.Namespace, expected.Name)
if apierrors.IsNotFound(err) {
if _, err := helper.Create(expected.Namespace, true, expected.Object); err != nil {
return fmt.Errorf("create error: %w", err)
}
return nil
} else if err != nil {
return fmt.Errorf("could not get object: %w", err)
}
patch, patchType, err := createPatch(existing, expected)
if err != nil {
return fmt.Errorf("error creating patch: %w", err)
}
if patch == nil {
// nothing to do
return nil
}
_, err = helper.Patch(expected.Namespace, expected.Name, patchType, patch,
&metav1.PatchOptions{})
if err != nil {
return fmt.Errorf("patch error: %w", err)
}
return nil

This also affects my sub-charts (Bitnami redis, Bitnami postgres) which also use the lookup function and fail although are disabled here to focus only on the clearer example.

Here is a full log of a run where I apply my watched for helm resource:

> make generate manifests install run
test -s /home/archer/git/authentik-manager/operator/bin/controller-gen || GOBIN=/home/archer/git/authentik-manager/operator/bin go install sigs.k8s.io/controller-tools/cmd/[email protected]
/home/archer/git/authentik-manager/operator/bin/controller-gen object:headerFile="" paths="./..."
/home/archer/git/authentik-manager/operator/bin/controller-gen rbac:roleName=manager-role crd webhook paths="./..." output:crd:artifacts:config=config/crd/bases
/home/archer/git/authentik-manager/operator/bin/kustomize build config/crd | kubectl apply -f -
customresourcedefinition.apiextensions.k8s.io/akblueprints.akm.goauthentik.io configured
customresourcedefinition.apiextensions.k8s.io/aks.akm.goauthentik.io unchanged
go fmt ./...
go vet ./...
# helm-operator run
go run ./main.go
1.6766436991798725e+09	INFO	controller-runtime.metrics	Metrics server is starting to listen	{"addr": ":8080"}
1.6766436991832378e+09	INFO	controllers.Helm	Watching resource	{"group": "akm.goauthentik.io", "version": "v1alpha1", "kind": "Ak"}
1.676643699183254e+09	INFO	setup	configured watch	{"gvk": "akm.goauthentik.io/v1alpha1, Kind=Ak", "chartPath": "helm-charts/ak", "maxConcurrentReconciles": 24, "reconcilePeriod": "1m0s"}
1.6766436991832697e+09	INFO	setup	starting manager
1.6766436991834452e+09	INFO	Starting server	{"path": "/metrics", "kind": "metrics", "addr": "[::]:8080"}
1.6766436991834517e+09	INFO	Starting server	{"kind": "health probe", "addr": "[::]:8081"}
1.6766436991835036e+09	INFO	Starting EventSource	{"controller": "akblueprint", "controllerGroup": "akm.goauthentik.io", "controllerKind": "AkBlueprint", "source": "kind source: *v1alpha1.AkBlueprint"}
1.6766436991835206e+09	INFO	Starting Controller	{"controller": "akblueprint", "controllerGroup": "akm.goauthentik.io", "controllerKind": "AkBlueprint"}
1.6766436991835217e+09	INFO	Starting EventSource	{"controller": "ak-controller", "source": "kind source: *unstructured.Unstructured"}
1.6766436991835382e+09	INFO	Starting EventSource	{"controller": "ak-controller", "source": "kind source: *v1.Secret"}
1.6766436991835427e+09	INFO	Starting Controller	{"controller": "ak-controller"}
1.6766436992841232e+09	INFO	Starting workers	{"controller": "akblueprint", "controllerGroup": "akm.goauthentik.io", "controllerKind": "AkBlueprint", "worker count": 1}
1.6766436992841737e+09	INFO	Starting workers	{"controller": "ak-controller", "worker count": 24}
1.6766437054854615e+09	DEBUG	controllers.Helm	Reconciliation triggered	{"ak": "default/ak-sample"}
1.6766437054908583e+09	DEBUG	controllers.Helm	Starting install
1.6766437056020834e+09	DEBUG	controllers.Helm	creating 11 resource(s)
1.676643705631722e+09	INFO	controllers.Helm	Release installed	{"ak": "default/ak-sample", "name": "ak-sample", "version": 1}
1.6766437056327908e+09	INFO	Starting EventSource	{"controller": "ak-controller", "source": "kind source: *unstructured.Unstructured"}
1.6766437056328113e+09	DEBUG	controllers.Helm	Watching dependent resource	{"ak": "default/ak-sample", "dependentAPIVersion": "v1", "dependentKind": "Secret"}
1.6766437056330194e+09	INFO	Starting EventSource	{"controller": "ak-controller", "source": "kind source: *unstructured.Unstructured"}
1.6766437056330316e+09	DEBUG	controllers.Helm	Watching dependent resource	{"ak": "default/ak-sample", "dependentAPIVersion": "v1", "dependentKind": "ConfigMap"}
1.6766437056331952e+09	INFO	Starting EventSource	{"controller": "ak-controller", "source": "kind source: *unstructured.Unstructured"}
1.6766437056332052e+09	DEBUG	controllers.Helm	Watching dependent resource	{"ak": "default/ak-sample", "dependentAPIVersion": "v1", "dependentKind": "Service"}
1.6766437056338887e+09	INFO	Starting EventSource	{"controller": "ak-controller", "source": "kind source: *unstructured.Unstructured"}
1.6766437056339014e+09	DEBUG	controllers.Helm	Watching dependent resource	{"ak": "default/ak-sample", "dependentAPIVersion": "apps/v1", "dependentKind": "Deployment"}
1.6766437056340444e+09	INFO	Starting EventSource	{"controller": "ak-controller", "source": "kind source: *unstructured.Unstructured"}
1.6766437056340532e+09	DEBUG	controllers.Helm	Watching dependent resource	{"ak": "default/ak-sample", "dependentAPIVersion": "networking.k8s.io/v1", "dependentKind": "Ingress"}
1.6766437056342168e+09	INFO	Starting EventSource	{"controller": "ak-controller", "source": "kind source: *unstructured.Unstructured"}
1.676643705634227e+09	DEBUG	controllers.Helm	Watching dependent resource	{"ak": "default/ak-sample", "dependentAPIVersion": "networking.k8s.io/v1", "dependentKind": "NetworkPolicy"}
1.676643705649836e+09	DEBUG	controllers.Helm	Reconciliation triggered	{"ak": "default/ak-sample"}
1.6766437056602938e+09	DEBUG	controllers.Helm	preparing upgrade for ak-sample
1.676643705733423e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "bootstrap-token-js20q4", "namespace": "kube-system", "apiVersion": "v1", "kind": "Secret"}
1.6766437057334795e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "sh.helm.release.v1.ak-sample.v1", "namespace": "default", "apiVersion": "v1", "kind": "Secret"}
1.6766437057334864e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "auth", "namespace": "default", "apiVersion": "v1", "kind": "Secret"}
1.676643705733534e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "authentik-server", "namespace": "default", "apiVersion": "v1", "kind": "Service"}
1.6766437057335584e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "kubernetes", "namespace": "default", "apiVersion": "v1", "kind": "Service"}
1.6766437057335649e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "kube-dns", "namespace": "kube-system", "apiVersion": "v1", "kind": "Service"}
1.676643705733571e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "authentik-worker", "namespace": "default", "apiVersion": "v1", "kind": "Service"}
1.676643705733582e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "kubelet-config", "namespace": "kube-system", "apiVersion": "v1", "kind": "ConfigMap"}
1.6766437057336082e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "kube-root-ca.crt", "namespace": "default", "apiVersion": "v1", "kind": "ConfigMap"}
1.676643705733655e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "kube-root-ca.crt", "namespace": "kube-system", "apiVersion": "v1", "kind": "ConfigMap"}
1.6766437057336686e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "kube-proxy", "namespace": "kube-system", "apiVersion": "v1", "kind": "ConfigMap"}
1.6766437057336805e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "extension-apiserver-authentication", "namespace": "kube-system", "apiVersion": "v1", "kind": "ConfigMap"}
1.676643705733691e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "coredns", "namespace": "kube-system", "apiVersion": "v1", "kind": "ConfigMap"}
1.6766437057337024e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "kube-root-ca.crt", "namespace": "kube-public", "apiVersion": "v1", "kind": "ConfigMap"}
1.6766437057337132e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "kube-root-ca.crt", "namespace": "kube-node-lease", "apiVersion": "v1", "kind": "ConfigMap"}
1.6766437057337236e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "authentik-config", "namespace": "default", "apiVersion": "v1", "kind": "ConfigMap"}
1.6766437057337363e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "kubeadm-config", "namespace": "kube-system", "apiVersion": "v1", "kind": "ConfigMap"}
1.676643705733748e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "cluster-info", "namespace": "kube-public", "apiVersion": "v1", "kind": "ConfigMap"}
1.676643705734698e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "auth-ldap", "namespace": "default", "apiVersion": "networking.k8s.io/v1", "kind": "Ingress"}
1.6766437057347128e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "auth", "namespace": "default", "apiVersion": "networking.k8s.io/v1", "kind": "Ingress"}
1.6766437057346978e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "general-netpol", "namespace": "default", "apiVersion": "networking.k8s.io/v1", "kind": "NetworkPolicy"}
1.6766437057347288e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "ldap-netpol", "namespace": "default", "apiVersion": "networking.k8s.io/v1", "kind": "NetworkPolicy"}
1.6766437057347398e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "authentik-worker", "namespace": "default", "apiVersion": "networking.k8s.io/v1", "kind": "NetworkPolicy"}
1.6766437057347512e+09	DEBUG	controllers.Helm	performing update for ak-sample
1.6766437057347138e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "authentik-server", "namespace": "default", "apiVersion": "apps/v1", "kind": "Deployment"}
1.6766437057347898e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "authentik-worker", "namespace": "default", "apiVersion": "apps/v1", "kind": "Deployment"}
1.6766437057348058e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "coredns", "namespace": "kube-system", "apiVersion": "apps/v1", "kind": "Deployment"}
1.6766437057447062e+09	DEBUG	controllers.Helm	dry run for ak-sample
1.6766437057501326e+09	DEBUG	controllers.Helm	preparing upgrade for ak-sample
1.676643705789205e+09	DEBUG	controllers.Helm	performing update for ak-sample
1.6766437057983747e+09	DEBUG	controllers.Helm	creating upgraded release for ak-sample
1.6766437058037639e+09	DEBUG	controllers.Helm	checking 11 resources for changes
1.676643705805758e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "sh.helm.release.v1.ak-sample.v2", "namespace": "default", "apiVersion": "v1", "kind": "Secret"}
1.6766437058108108e+09	DEBUG	controllers.Helm	Looks like there are no changes for NetworkPolicy "authentik-worker"
1.676643705814753e+09	DEBUG	controllers.Helm	Looks like there are no changes for NetworkPolicy "ldap-netpol"
1.6766437058186688e+09	DEBUG	controllers.Helm	Looks like there are no changes for NetworkPolicy "general-netpol"
1.676643705822401e+09	DEBUG	controllers.Helm	Looks like there are no changes for Secret "auth"
1.6766437058262606e+09	DEBUG	controllers.Helm	Looks like there are no changes for ConfigMap "authentik-config"
1.676643705831045e+09	DEBUG	controllers.Helm	Looks like there are no changes for Service "authentik-server"
1.6766437058344057e+09	DEBUG	controllers.Helm	Looks like there are no changes for Service "authentik-worker"
1.6766437058460007e+09	DEBUG	controllers.Helm	Looks like there are no changes for Deployment "authentik-server"
1.6766437058591201e+09	DEBUG	controllers.Helm	Looks like there are no changes for Deployment "authentik-worker"
1.6766437058633142e+09	DEBUG	controllers.Helm	Looks like there are no changes for Ingress "auth"
1.6766437058660803e+09	DEBUG	controllers.Helm	Looks like there are no changes for Ingress "auth-ldap"
1.6766437058724103e+09	DEBUG	controllers.Helm	updating status for upgraded release for ak-sample
1.6766437058739226e+09	DEBUG	predicate	Reconciling due to dependent resource update	{"name": "sh.helm.release.v1.ak-sample.v1", "namespace": "default", "apiVersion": "v1", "kind": "Secret"}
1.6766437058783867e+09	INFO	controllers.Helm	Release upgraded	{"ak": "default/ak-sample", "name": "ak-sample", "version": 2}

********************************************************** skipping many repeats ***************************************************************

1.6766437080106707e+09	DEBUG	predicate	Reconciling due to dependent resource update	{"name": "sh.helm.release.v1.ak-sample.v9", "namespace": "default", "apiVersion": "v1", "kind": "Secret"}
1.676643708014716e+09	DEBUG	controllers.Helm	Reconciliation triggered	{"ak": "default/ak-sample"}
1.676643708067962e+09	DEBUG	controllers.Helm	preparing upgrade for ak-sample
1.6766437082209888e+09	DEBUG	controllers.Helm	performing update for ak-sample
1.6766437082409153e+09	DEBUG	controllers.Helm	dry run for ak-sample
1.6766437082749157e+09	DEBUG	controllers.Helm	preparing upgrade for ak-sample
1.676643708349455e+09	DEBUG	controllers.Helm	performing update for ak-sample
1.6766437083658214e+09	DEBUG	controllers.Helm	creating upgraded release for ak-sample
1.6766437083739903e+09	DEBUG	controllers.Helm	checking 11 resources for changes
1.676643708375554e+09	DEBUG	predicate	Skipping reconciliation for dependent resource creation	{"name": "sh.helm.release.v1.ak-sample.v10", "namespace": "default", "apiVersion": "v1", "kind": "Secret"}
1.6766437083802536e+09	DEBUG	controllers.Helm	Looks like there are no changes for NetworkPolicy "authentik-worker"
1.6766437083839474e+09	DEBUG	controllers.Helm	Looks like there are no changes for NetworkPolicy "ldap-netpol"
1.6766437083875918e+09	DEBUG	controllers.Helm	Looks like there are no changes for NetworkPolicy "general-netpol"
1.6766437083913655e+09	DEBUG	controllers.Helm	Looks like there are no changes for Secret "auth"
1.6766437083955123e+09	DEBUG	controllers.Helm	Looks like there are no changes for ConfigMap "authentik-config"
1.6766437083996217e+09	DEBUG	controllers.Helm	Looks like there are no changes for Service "authentik-server"
1.6766437084061203e+09	DEBUG	controllers.Helm	Looks like there are no changes for Service "authentik-worker"
1.6766437084129076e+09	DEBUG	controllers.Helm	Looks like there are no changes for Deployment "authentik-server"
1.6766437084197428e+09	DEBUG	controllers.Helm	Looks like there are no changes for Deployment "authentik-worker"
1.6766437084236712e+09	DEBUG	controllers.Helm	Looks like there are no changes for Ingress "auth"
1.6766437084272254e+09	DEBUG	controllers.Helm	Looks like there are no changes for Ingress "auth-ldap"
1.6766437084342504e+09	DEBUG	controllers.Helm	updating status for upgraded release for ak-sample
1.6766437084358995e+09	DEBUG	predicate	Reconciling due to dependent resource update	{"name": "sh.helm.release.v1.ak-sample.v9", "namespace": "default", "apiVersion": "v1", "kind": "Secret"}
^C1.6766437084366193e+09	INFO	Stopping and waiting for non leader election runnables
1.6766437084366376e+09	INFO	Stopping and waiting for leader election runnables
1.676643708436671e+09	INFO	Shutdown signal received, waiting for all workers to finish	{"controller": "akblueprint", "controllerGroup": "akm.goauthentik.io", "controllerKind": "AkBlueprint"}
1.6766437084366868e+09	INFO	Shutdown signal received, waiting for all workers to finish	{"controller": "ak-controller"}
1.6766437084366996e+09	INFO	All workers finished	{"controller": "akblueprint", "controllerGroup": "akm.goauthentik.io", "controllerKind": "AkBlueprint"}
1.676643708444819e+09	INFO	controllers.Helm	Release upgraded	{"ak": "default/ak-sample", "name": "ak-sample", "version": 10}
1.6766437084463599e+09	DEBUG	predicate	Reconciling due to dependent resource update	{"name": "sh.helm.release.v1.ak-sample.v10", "namespace": "default", "apiVersion": "v1", "kind": "Secret"}
1.6766437084504726e+09	DEBUG	controllers.Helm	Reconciliation triggered	{"ak": "default/ak-sample"}
1.6766437084505365e+09	ERROR	Reconciler error	{"controller": "ak-controller", "object": {"name":"ak-sample","namespace":"default"}, "namespace": "default", "name": "ak-sample", "reconcileID": "95d10411-5865-4450-b6f4-e718640001ac", "error": "client rate limiter Wait returned an error: context canceled"}
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler
	/home/archer/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:326
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem
	/home/archer/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:273
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2
	/home/archer/go/pkg/mod/sigs.k8s.io/[email protected]/pkg/internal/controller/controller.go:234
1.6766437084505928e+09	INFO	All workers finished	{"controller": "ak-controller"}
1.6766437084506066e+09	INFO	Stopping and waiting for caches
1.6766437084507222e+09	INFO	Stopping and waiting for webhooks
1.6766437084507341e+09	INFO	Wait completed, proceeding to shutdown the manager
make: *** [Makefile:113: run] Error 1

I can confirm it is related to the secret as when it is disabled I have no such reconcilliation problems:

1.6766454866735418e+09	INFO	controllers.Helm	Release installed	{"ak": "default/ak-sample", "name": "ak-sample", "version": 1}
1.6766454866736445e+09	DEBUG	predicate	Reconciling due to dependent resource update	{"name": "authentik-worker", "namespace": "default", "apiVersion": "apps/v1", "kind": "Deployment"}
1.6766454866741118e+09	DEBUG	predicate	Reconciling due to dependent resource update	{"name": "authentik-server", "namespace": "default", "apiVersion": "apps/v1", "kind": "Deployment"}
1.676645486674792e+09	DEBUG	predicate	Reconciling due to dependent resource update	{"name": "sh.helm.release.v1.ak-sample.v1", "namespace": "default", "apiVersion": "v1", "kind": "Secret"}
1.67664548668227e+09	DEBUG	predicate	Reconciling due to dependent resource update	{"name": "authentik-worker", "namespace": "default", "apiVersion": "apps/v1", "kind": "Deployment"}
1.67664548668497e+09	DEBUG	predicate	Reconciling due to dependent resource update	{"name": "authentik-server", "namespace": "default", "apiVersion": "apps/v1", "kind": "Deployment"}
1.6766454866865325e+09	DEBUG	controllers.Helm	Reconciliation triggered	{"ak": "default/ak-sample"}
1.6766454866900659e+09	DEBUG	predicate	Reconciling due to dependent resource update	{"name": "authentik-worker", "namespace": "default", "apiVersion": "apps/v1", "kind": "Deployment"}
1.6766454866957946e+09	DEBUG	predicate	Reconciling due to dependent resource update	{"name": "authentik-server", "namespace": "default", "apiVersion": "apps/v1", "kind": "Deployment"}
1.6766454866978717e+09	DEBUG	controllers.Helm	preparing upgrade for ak-sample
1.6766454867697005e+09	DEBUG	controllers.Helm	performing update for ak-sample
1.6766454867792912e+09	DEBUG	controllers.Helm	dry run for ak-sample
1.6766454867954018e+09	INFO	controllers.Helm	Release reconciled	{"ak": "default/ak-sample", "name": "ak-sample", "version": 1}
1.6766454867980201e+09	DEBUG	controllers.Helm	Reconciliation triggered	{"ak": "default/ak-sample"}
1.6766454868060386e+09	DEBUG	controllers.Helm	preparing upgrade for ak-sample
1.676645486920131e+09	DEBUG	controllers.Helm	performing update for ak-sample
1.6766454869291651e+09	DEBUG	controllers.Helm	dry run for ak-sample
1.6766454869506211e+09	INFO	controllers.Helm	Release reconciled	{"ak": "default/ak-sample", "name": "ak-sample", "version": 1}
1.6766454987888744e+09	DEBUG	controllers.Helm	Reconciliation triggered	{"ak": "default/ak-sample"}
1.676645498802959e+09	DEBUG	controllers.Helm	preparing upgrade for ak-sample
1.6766454989271529e+09	DEBUG	controllers.Helm	performing update for ak-sample
1.6766454989450462e+09	DEBUG	controllers.Helm	dry run for ak-sample
1.6766454989689188e+09	INFO	controllers.Helm	Release reconciled	{"ak": "default/ak-sample", "name": "ak-sample", "version": 1}

If I am doing anything particularly wrong please let me know. I will try to see if there is a specific in-code fix possible and potentially PR it if I find one.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions