add kyverno policies
Signed-off-by: gwg313 <gwg313@pm.me>
This commit is contained in:
parent
4be877e419
commit
baa0216960
35 changed files with 843 additions and 39 deletions
|
|
@ -0,0 +1,42 @@
|
|||
apiVersion: kyverno.io/v1
|
||||
kind: ClusterPolicy
|
||||
metadata:
|
||||
name: default-container-resources
|
||||
spec:
|
||||
background: true
|
||||
|
||||
rules:
|
||||
- name: default-container-resources
|
||||
match:
|
||||
any:
|
||||
- resources:
|
||||
kinds:
|
||||
- Pod
|
||||
|
||||
mutate:
|
||||
foreach:
|
||||
- list: "request.object.spec.containers"
|
||||
patchStrategicMerge:
|
||||
spec:
|
||||
containers:
|
||||
- (name): "{{ element.name }}"
|
||||
resources:
|
||||
requests:
|
||||
+(cpu): "100m"
|
||||
+(memory): "128Mi"
|
||||
limits:
|
||||
+(cpu): "200m"
|
||||
+(memory): "512Mi"
|
||||
|
||||
- list: "request.object.spec.initContainers || []"
|
||||
patchStrategicMerge:
|
||||
spec:
|
||||
initContainers:
|
||||
- (name): "{{ element.name }}"
|
||||
resources:
|
||||
requests:
|
||||
+(cpu): "100m"
|
||||
+(memory): "128Mi"
|
||||
limits:
|
||||
+(cpu): "200m"
|
||||
+(memory): "512Mi"
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
apiVersion: kyverno.io/v1
|
||||
kind: ClusterPolicy
|
||||
metadata:
|
||||
name: default-cronjob-history
|
||||
spec:
|
||||
rules:
|
||||
- name: set-cronjob-history
|
||||
match:
|
||||
any:
|
||||
- resources:
|
||||
kinds:
|
||||
- CronJob
|
||||
|
||||
mutate:
|
||||
patchStrategicMerge:
|
||||
spec:
|
||||
+(successfulJobsHistoryLimit): 1
|
||||
+(failedJobsHistoryLimit): 2
|
||||
|
|
@ -0,0 +1,17 @@
|
|||
apiVersion: kyverno.io/v1
|
||||
kind: ClusterPolicy
|
||||
metadata:
|
||||
name: default-deployment-revision-history
|
||||
spec:
|
||||
rules:
|
||||
- name: set-revision-history-limit
|
||||
match:
|
||||
any:
|
||||
- resources:
|
||||
kinds:
|
||||
- Deployment
|
||||
|
||||
mutate:
|
||||
patchStrategicMerge:
|
||||
spec:
|
||||
+(revisionHistoryLimit): 3
|
||||
|
|
@ -0,0 +1,36 @@
|
|||
apiVersion: kyverno.io/v1
|
||||
kind: ClusterPolicy
|
||||
metadata:
|
||||
name: default-drop-all-capabilities
|
||||
spec:
|
||||
background: true
|
||||
|
||||
rules:
|
||||
- name: default-drop-all-capabilities
|
||||
match:
|
||||
any:
|
||||
- resources:
|
||||
kinds:
|
||||
- Pod
|
||||
|
||||
mutate:
|
||||
foreach:
|
||||
- list: "request.object.spec.containers"
|
||||
patchStrategicMerge:
|
||||
spec:
|
||||
containers:
|
||||
- (name): "{{ element.name }}"
|
||||
securityContext:
|
||||
+(capabilities):
|
||||
drop:
|
||||
- ALL
|
||||
|
||||
- list: "request.object.spec.initContainers || []"
|
||||
patchStrategicMerge:
|
||||
spec:
|
||||
initContainers:
|
||||
- (name): "{{ element.name }}"
|
||||
securityContext:
|
||||
+(capabilities):
|
||||
drop:
|
||||
- ALL
|
||||
17
platform/kyverno/policies/10-defaults/default-job-ttl.yaml
Normal file
17
platform/kyverno/policies/10-defaults/default-job-ttl.yaml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
apiVersion: kyverno.io/v1
|
||||
kind: ClusterPolicy
|
||||
metadata:
|
||||
name: default-job-ttl
|
||||
spec:
|
||||
rules:
|
||||
- name: set-job-ttl
|
||||
match:
|
||||
any:
|
||||
- resources:
|
||||
kinds:
|
||||
- Job
|
||||
|
||||
mutate:
|
||||
patchStrategicMerge:
|
||||
spec:
|
||||
+(ttlSecondsAfterFinished): 86400
|
||||
|
|
@ -0,0 +1,46 @@
|
|||
apiVersion: kyverno.io/v1
|
||||
kind: ClusterPolicy
|
||||
metadata:
|
||||
name: default-run-as-non-root
|
||||
spec:
|
||||
background: true
|
||||
|
||||
rules:
|
||||
|
||||
- name: default-pod-run-as-non-root
|
||||
match:
|
||||
any:
|
||||
- resources:
|
||||
kinds:
|
||||
- Pod
|
||||
|
||||
mutate:
|
||||
patchStrategicMerge:
|
||||
spec:
|
||||
securityContext:
|
||||
+(runAsNonRoot): true
|
||||
|
||||
- name: default-container-run-as-non-root
|
||||
match:
|
||||
any:
|
||||
- resources:
|
||||
kinds:
|
||||
- Pod
|
||||
|
||||
mutate:
|
||||
foreach:
|
||||
- list: "request.object.spec.containers"
|
||||
patchStrategicMerge:
|
||||
spec:
|
||||
containers:
|
||||
- (name): "{{ element.name }}"
|
||||
securityContext:
|
||||
+(runAsNonRoot): true
|
||||
|
||||
- list: "request.object.spec.initContainers || []"
|
||||
patchStrategicMerge:
|
||||
spec:
|
||||
initContainers:
|
||||
- (name): "{{ element.name }}"
|
||||
securityContext:
|
||||
+(runAsNonRoot): true
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
apiVersion: kyverno.io/v1
|
||||
kind: ClusterPolicy
|
||||
metadata:
|
||||
name: default-seccomp-runtime-default
|
||||
|
||||
spec:
|
||||
background: true
|
||||
|
||||
rules:
|
||||
- name: default-pod-seccomp-runtime-default
|
||||
match:
|
||||
any:
|
||||
- resources:
|
||||
kinds:
|
||||
- Pod
|
||||
|
||||
mutate:
|
||||
patchStrategicMerge:
|
||||
spec:
|
||||
securityContext:
|
||||
seccompProfile:
|
||||
type: RuntimeDefault
|
||||
|
||||
- name: default-container-seccomp-runtime-default
|
||||
match:
|
||||
any:
|
||||
- resources:
|
||||
kinds:
|
||||
- Pod
|
||||
|
||||
mutate:
|
||||
foreach:
|
||||
- list: "request.object.spec.containers"
|
||||
patchStrategicMerge:
|
||||
spec:
|
||||
containers:
|
||||
- (name): "{{ element.name }}"
|
||||
securityContext:
|
||||
seccompProfile:
|
||||
type: RuntimeDefault
|
||||
|
||||
- list: "request.object.spec.initContainers || []"
|
||||
patchStrategicMerge:
|
||||
spec:
|
||||
initContainers:
|
||||
- (name): "{{ element.name }}"
|
||||
securityContext:
|
||||
seccompProfile:
|
||||
type: RuntimeDefault
|
||||
18
platform/kyverno/policies/10-defaults/kustomization.yaml
Normal file
18
platform/kyverno/policies/10-defaults/kustomization.yaml
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
|
||||
resources:
|
||||
- default-container-resources.yaml
|
||||
- default-cronjob-history.yaml
|
||||
- default-deployment-revision-history.yaml
|
||||
- default-drop-all-capabilities.yaml
|
||||
- default-job-ttl.yaml
|
||||
- default-run-as-non-root.yaml
|
||||
- default-seccomp-runtime-default.yaml
|
||||
|
||||
commonLabels:
|
||||
app.kubernetes.io/part-of: kyverno-policies
|
||||
policy-tier: defaults
|
||||
|
||||
commonAnnotations:
|
||||
argocd.argoproj.io/sync-wave: "0"
|
||||
Loading…
Add table
Add a link
Reference in a new issue