mirror of
https://github.com/kyverno/kyverno.git
synced 2024-12-14 11:57:48 +00:00
04dc3ddfe3
* remove sample Dir and remove testcases form test_runner Signed-off-by: vyankatesh <vyankatesh@neualto.com> * change git URL for test Signed-off-by: vyankatesh <vyankatesh@neualto.com> * fix fmt issue Signed-off-by: vyankatesh <vyankatesh@neualto.com> * remove unused policy and test yamls Signed-off-by: vyankatesh <vyankatesh@neualto.com> * fix yaml path issue Signed-off-by: vyankatesh <vyankatesh@neualto.com> Co-authored-by: vyankatesh <vyankatesh@neualto.com>
35 lines
No EOL
1.2 KiB
YAML
35 lines
No EOL
1.2 KiB
YAML
apiVersion: kyverno.io/v1
|
|
kind: ClusterPolicy
|
|
metadata:
|
|
name: insert-podantiaffinity
|
|
spec:
|
|
rules:
|
|
- name: insert-podantiaffinity
|
|
match:
|
|
resources:
|
|
kinds:
|
|
- Deployment
|
|
preconditions:
|
|
# This precondition ensures that the label `app` is applied to Pods within the Deployment resource.
|
|
- key: "{{request.object.metadata.labels.app}}"
|
|
operator: NotEquals
|
|
value: ""
|
|
# Mutates the Deployment resource to add fields.
|
|
mutate:
|
|
patchStrategicMerge:
|
|
spec:
|
|
template:
|
|
spec:
|
|
# Add the `affinity` key and others if not already specified in the Deployment manifest.
|
|
+(affinity):
|
|
+(podAntiAffinity):
|
|
+(preferredDuringSchedulingIgnoredDuringExecution):
|
|
- weight: 1
|
|
podAffinityTerm:
|
|
topologyKey: "kubernetes.io/hostname"
|
|
labelSelector:
|
|
matchExpressions:
|
|
- key: app
|
|
operator: In
|
|
values:
|
|
- "{{request.object.metadata.labels.app}}" |