Files
kyverno-2026-example/03-mutation/01-basics/add-standard-labels.yaml
2026-04-08 20:22:14 +07:00

34 lines
1.1 KiB
YAML

apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: add-standard-labels
annotations:
policies.kyverno.io/title: "Добавление стандартных лейблов"
policies.kyverno.io/category: Governance
policies.kyverno.io/severity: low
policies.kyverno.io/subject: Deployment,StatefulSet,DaemonSet
policies.kyverno.io/description: >-
Автоматически добавляет стандартные лейблы к workload ресурсам,
если они отсутствуют. Символ + означает "добавить только если нет".
spec:
rules:
- name: add-managed-by-label
match:
resources:
kinds:
- Deployment
- StatefulSet
- DaemonSet
exclude:
resources:
namespaces:
- kube-system
mutate:
patchStrategicMerge:
metadata:
labels:
+(managed-by): "kyverno"
+(monitored): "true"
# Динамически берём namespace как cost-center
+(cost-center): "{{ request.object.metadata.namespace }}"