Files
Homelabv4/infrastructure/kyverno/policies/require-labels.yaml
T
2026-03-09 20:21:35 -05:00

44 lines
1.1 KiB
YAML

apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: require-app-label
annotations:
policies.kyverno.io/title: Require App Label
policies.kyverno.io/category: Zero Trust
policies.kyverno.io/severity: low
spec:
validationFailureAction: Audit
background: true
rules:
- name: require-app-label
match:
any:
- resources:
kinds:
- Deployment
- StatefulSet
- DaemonSet
exclude:
any:
- resources:
namespaces:
- kube-system
- kube-node-lease
- kyverno
- rook-ceph
- default
- crowdsec
- gitlab
- scylla-manager
- scylla-operator
- cert-manager
validate:
message: "The label 'app' or 'app.kubernetes.io/name' is required."
anyPattern:
- metadata:
labels:
app: "?*"
- metadata:
labels:
app.kubernetes.io/name: "?*"