All Policies
Restrict Deprecated Registry in ValidatingPolicy
Legacy k8s.gcr.io container image registry will be frozen in early April 2023 k8s.gcr.io image registry will be frozen from the 3rd of April 2023. Images for Kubernetes 1.27 will not be available in the k8s.gcr.io image registry. Please read our announcement for more details. https://kubernetes.io/blog/2023/02/06/k8s-gcr-io-freeze-announcement/
Policy Definition
/other-vpol/restrict-deprecated-registry/restrict-deprecated-registry.yaml
1apiVersion: policies.kyverno.io/v1alpha1
2kind: ValidatingPolicy
3metadata:
4 name: restrict-deprecated-registry
5 annotations:
6 policies.kyverno.io/title: Restrict Deprecated Registry in ValidatingPolicy
7 policies.kyverno.io/category: Best Practices, EKS Best Practices in vpol
8 policies.kyverno.io/severity: high
9 policies.kyverno.io/minversion: 1.14.0
10 kyverno.io/kubernetes-version: "1.27-1.28"
11 policies.kyverno.io/subject: Pod
12 policies.kyverno.io/description: >-
13 Legacy k8s.gcr.io container image registry will be frozen in early April 2023
14 k8s.gcr.io image registry will be frozen from the 3rd of April 2023.
15 Images for Kubernetes 1.27 will not be available in the k8s.gcr.io image registry.
16 Please read our announcement for more details.
17 https://kubernetes.io/blog/2023/02/06/k8s-gcr-io-freeze-announcement/
18spec:
19 validationActions: [Deny]
20 evaluation:
21 background:
22 enabled: true
23 matchConstraints:
24 resourceRules:
25 - apiGroups: [""]
26 apiVersions: ["v1"]
27 operations: ["CREATE", "UPDATE"]
28 resources: ["pods"]
29 variables:
30 - name: allContainers
31 expression: "object.spec.containers + object.spec.?initContainers.orValue([]) + object.spec.?ephemeralContainers.orValue([])"
32 validations:
33 - expression: "variables.allContainers.all(container, !container.image.startsWith('k8s.gcr.io/'))"
34 message: "The \"k8s.gcr.io\" image registry is deprecated. \"registry.k8s.io\" should now be used."
35