mirror of
https://github.com/rubenhensen/k8scd.git
synced 2026-09-17 18:22:54 +02:00
Add Kyverno policy to redirect Bitnami images
This commit is contained in:
@@ -0,0 +1,51 @@
|
|||||||
|
apiVersion: kyverno.io/v1
|
||||||
|
kind: ClusterPolicy
|
||||||
|
metadata:
|
||||||
|
name: replace-bitnami-image-repository-with-bitnamilegacy
|
||||||
|
annotations:
|
||||||
|
policies.kyverno.io/title: Replace Bitnami Image Repository With Bitnami Legacy
|
||||||
|
pod-policies.kyverno.io/autogen-controllers: none
|
||||||
|
policies.kyverno.io/subject: Pod
|
||||||
|
spec:
|
||||||
|
rules:
|
||||||
|
- name: redirect-bitnami-to-bitnamilegacy
|
||||||
|
match:
|
||||||
|
any:
|
||||||
|
- resources:
|
||||||
|
kinds:
|
||||||
|
- Pod
|
||||||
|
operations:
|
||||||
|
- CREATE
|
||||||
|
- UPDATE
|
||||||
|
mutate:
|
||||||
|
foreach:
|
||||||
|
- list: request.object.spec.initContainers[]
|
||||||
|
context:
|
||||||
|
- name: imageData
|
||||||
|
imageRegistry:
|
||||||
|
reference: "{{ element.image }}"
|
||||||
|
preconditions:
|
||||||
|
any:
|
||||||
|
- key: "{{ regex_match('^(docker\\.io)/(bitnami)/(.*)$', '{{element.image}}') }}"
|
||||||
|
operator: Equals
|
||||||
|
value: true
|
||||||
|
patchStrategicMerge:
|
||||||
|
spec:
|
||||||
|
initContainers:
|
||||||
|
- name: "{{ element.name }}"
|
||||||
|
image: "{{ regex_replace_all('^(docker\\.io)/(bitnami)/(.*)$', '{{element.image}}', '$1/bitnamilegacy/$3' )}}"
|
||||||
|
- list: request.object.spec.containers[]
|
||||||
|
context:
|
||||||
|
- name: imageData
|
||||||
|
imageRegistry:
|
||||||
|
reference: "{{ element.image }}"
|
||||||
|
preconditions:
|
||||||
|
any:
|
||||||
|
- key: "{{ regex_match('^(docker\\.io)/(bitnami)/(.*)$', '{{element.image}}') }}"
|
||||||
|
operator: Equals
|
||||||
|
value: true
|
||||||
|
patchStrategicMerge:
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: "{{ element.name }}"
|
||||||
|
image: "{{ regex_replace_all('^(docker\\.io)/(bitnami)/(.*)$', '{{element.image}}', '$1/bitnamilegacy/$3' )}}"
|
||||||
Reference in New Issue
Block a user