fix(chart): global image registry bug for webhooks cleanup pre-delete hook
Explanation
This fixes webhook cleanup pre-delete hook image registry defaults so that global.image.registry gets to be used as default when global.image.registry is set and webhook cleanup pre-delete hook image registry explicit override is not set.
Related issue
Fix for Kyverno Deployments was introduced via !11604 (merged) which fixed #11579 (closed) for Deployments but not for pre-delete hooks.
Milestone of this PR
/milestone 1.15.3
Documentation (required for features)
My PR contains new or altered behavior to Kyverno.
-
I have sent the draft PR to add or update the documentation and the link is:
What type of PR is this
/kind bug
Proposed Changes
PR fixes the bug by introducing webhooksCleanup.image.defaultRegistry and setting webhooksCleanup.image.registry to nil, as expected by kyverno.image helper used for webhooks cleanup pre-delete hook image.
Proof Manifests
Defaults remain as before
$ helm template ./charts/kyverno | grep image:
image:
image:
image:
image:
image:
image:
image: "reg.kyverno.io/kyverno/kyvernopre:latest"
image: "reg.kyverno.io/kyverno/kyverno:latest"
image: "reg.kyverno.io/kyverno/background-controller:latest"
image: "reg.kyverno.io/kyverno/cleanup-controller:latest"
image: "reg.kyverno.io/kyverno/reports-controller:latest"
image: curlimages/curl:8.10.1
image: curlimages/curl:8.10.1
image: curlimages/curl:8.10.1
image: curlimages/curl:8.10.1
image: curlimages/curl:8.10.1
image: "reg.kyverno.io/kyverno/kyverno-cli:latest"
image: "registry.k8s.io/kubectl:v1.32.7"
image: "registry.k8s.io/kubectl:v1.32.7"
image: "registry.k8s.io/kubectl:v1.32.7"
When global.image.registry is set, it gets respected as webhooks cleanup pre-delete hook image registry.
$ helm template ./charts/kyverno --set global.image.registry=myregistry | grep image:
image:
image:
image:
image:
image:
image:
image: "myregistry/kyverno/kyvernopre:latest"
image: "myregistry/kyverno/kyverno:latest"
image: "myregistry/kyverno/background-controller:latest"
image: "myregistry/kyverno/cleanup-controller:latest"
image: "myregistry/kyverno/reports-controller:latest"
image: curlimages/curl:8.10.1
image: curlimages/curl:8.10.1
image: curlimages/curl:8.10.1
image: curlimages/curl:8.10.1
image: curlimages/curl:8.10.1
image: "myregistry/kyverno/kyverno-cli:latest"
image: "myregistry/kubectl:v1.32.7"
image: "myregistry/kubectl:v1.32.7"
image: "myregistry/kubectl:v1.32.7"
Even when global.image.registry is set, webhooksCleanup.image.registry has precedence as webhooks cleanup pre-delete hook image registry explicit override.
$ helm template ./charts/kyverno --set global.image.registry=myregistry --set webhooksCleanup.image.registry=myotherregistry | grep image:
image:
image:
image:
image:
image:
image:
image: "myregistry/kyverno/kyvernopre:latest"
image: "myregistry/kyverno/kyverno:latest"
image: "myregistry/kyverno/background-controller:latest"
image: "myregistry/kyverno/cleanup-controller:latest"
image: "myregistry/kyverno/reports-controller:latest"
image: curlimages/curl:8.10.1
image: curlimages/curl:8.10.1
image: curlimages/curl:8.10.1
image: curlimages/curl:8.10.1
image: curlimages/curl:8.10.1
image: "myregistry/kyverno/kyverno-cli:latest"
image: "myotherregistry/kubectl:v1.32.7"
image: "myotherregistry/kubectl:v1.32.7"
image: "myotherregistry/kubectl:v1.32.7"
Checklist
-
I have read the contributing guidelines. -
I have read the PR documentation guide and followed the process including adding proof manifests to this PR. -
This is a bug fix and I have added unit tests that prove my fix is effective. -
This is a feature and I have added CLI tests that are applicable. -
My PR needs to be cherry picked to a specific release branch which is . -
My PR contains new or altered behavior to Kyverno and -
CLI support should be added and my PR doesn't contain that functionality.
-