mirror of
https://github.com/rubenhensen/k8scd.git
synced 2026-09-17 10:22:54 +02:00
52 lines
1.8 KiB
YAML
52 lines
1.8 KiB
YAML
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' )}}"
|