34 lines
1.0 KiB
YAML
34 lines
1.0 KiB
YAML
{{- if .Values.kyverno.enabled }}
|
|
apiVersion: kyverno.io/v1
|
|
kind: ClusterPolicy
|
|
metadata:
|
|
name: sync-regcred-secret
|
|
annotations:
|
|
policies.kyverno.io/title: Sync Secrets
|
|
policies.kyverno.io/category: Sample
|
|
policies.kyverno.io/subject: Secret
|
|
policies.kyverno.io/description: >-
|
|
Secrets like registry credentials often need to exist in multiple
|
|
Namespaces so Pods there have access. Manually duplicating those Secrets
|
|
is time consuming and error prone. This policy will copy a
|
|
Secret called `regcred` which exists in the `default` Namespace to
|
|
new Namespaces when they are created. It will also push updates to
|
|
the copied Secrets should the source Secret be changed.
|
|
spec:
|
|
rules:
|
|
- name: sync-image-pull-secret
|
|
match:
|
|
resources:
|
|
kinds:
|
|
- Namespace
|
|
generate:
|
|
apiVersion: v1
|
|
kind: Secret
|
|
name: regcred
|
|
namespace: "{{`{{request.object.metadata.name}}`}}"
|
|
synchronize: true
|
|
clone:
|
|
namespace: default
|
|
name: regcred
|
|
{{- end }}
|