-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(deps): update helm release cert-manager to v1.16.2 #2146
base: main
Are you sure you want to change the base?
Conversation
Path: @@ -836,9 +836,11 @@
serviceAccountName: cert-manager-cainjector
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.10.0"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +852,9 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux
---
@@ -888,9 +893,11 @@
serviceAccountName: cert-manager
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.10.0"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -904,6 +911,9 @@
protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -956,20 +966,27 @@
serviceAccountName: cert-manager-webhook
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.10.0"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1009,9 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1187,9 +1207,11 @@
serviceAccountName: cert-manager-startupapicheck
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-ctl:v1.10.0"
imagePullPolicy: IfNotPresent
args:
- check
@@ -1197,5 +1219,8 @@
- --wait=1m
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux |
4a5d44e
to
108c986
Compare
Path: @@ -836,9 +836,11 @@
serviceAccountName: cert-manager-cainjector
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.10.1"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +852,9 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux
---
@@ -888,9 +893,11 @@
serviceAccountName: cert-manager
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.10.1"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -904,6 +911,9 @@
protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -956,20 +966,27 @@
serviceAccountName: cert-manager-webhook
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.10.1"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1009,9 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1187,9 +1207,11 @@
serviceAccountName: cert-manager-startupapicheck
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-ctl:v1.10.1"
imagePullPolicy: IfNotPresent
args:
- check
@@ -1197,5 +1219,8 @@
- --wait=1m
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux |
108c986
to
f3b8e06
Compare
Path: @@ -836,9 +836,11 @@
serviceAccountName: cert-manager-cainjector
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.10.2"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +852,9 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux
---
@@ -888,9 +893,11 @@
serviceAccountName: cert-manager
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.10.2"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -904,6 +911,9 @@
protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -956,20 +966,27 @@
serviceAccountName: cert-manager-webhook
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.10.2"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1009,9 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1187,9 +1207,11 @@
serviceAccountName: cert-manager-startupapicheck
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-ctl:v1.10.2"
imagePullPolicy: IfNotPresent
args:
- check
@@ -1197,5 +1219,8 @@
- --wait=1m
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux |
f3b8e06
to
6397f39
Compare
Path: @@ -51,6 +51,7 @@
app.kubernetes.io/name: webhook
app.kubernetes.io/instance: cert-manager
app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/managed-by: Helm
data:
---
# Source: cert-manager/templates/cainjector-rbac.yaml
@@ -836,9 +837,11 @@
serviceAccountName: cert-manager-cainjector
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.11.0"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +853,9 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux
---
@@ -888,22 +894,29 @@
serviceAccountName: cert-manager
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.11.0"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.11.0
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -956,20 +969,27 @@
serviceAccountName: cert-manager-webhook
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.11.0"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1012,9 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1187,9 +1210,11 @@
serviceAccountName: cert-manager-startupapicheck
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-ctl:v1.11.0"
imagePullPolicy: IfNotPresent
args:
- check
@@ -1197,5 +1222,8 @@
- --wait=1m
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux |
6397f39
to
70aedbe
Compare
Path: @@ -51,6 +51,7 @@
app.kubernetes.io/name: webhook
app.kubernetes.io/instance: cert-manager
app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/managed-by: Helm
data:
---
# Source: cert-manager/templates/cainjector-rbac.yaml
@@ -76,13 +77,13 @@
verbs: ["get", "create", "update", "patch"]
- apiGroups: ["admissionregistration.k8s.io"]
resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiregistration.k8s.io"]
resources: ["apiservices"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
---
# Source: cert-manager/templates/rbac.yaml
# Issuer controller role
@@ -836,9 +837,11 @@
serviceAccountName: cert-manager-cainjector
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.12.1"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +853,9 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux
---
@@ -888,22 +894,32 @@
serviceAccountName: cert-manager
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.12.1"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.12.1
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -956,20 +972,27 @@
serviceAccountName: cert-manager-webhook
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.12.1"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1015,9 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1187,9 +1213,11 @@
serviceAccountName: cert-manager-startupapicheck
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-ctl:v1.12.1"
imagePullPolicy: IfNotPresent
args:
- check
@@ -1197,5 +1225,8 @@
- --wait=1m
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux |
70aedbe
to
60ed80d
Compare
Path: @@ -51,6 +51,7 @@
app.kubernetes.io/name: webhook
app.kubernetes.io/instance: cert-manager
app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/managed-by: Helm
data:
---
# Source: cert-manager/templates/cainjector-rbac.yaml
@@ -76,13 +77,13 @@
verbs: ["get", "create", "update", "patch"]
- apiGroups: ["admissionregistration.k8s.io"]
resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiregistration.k8s.io"]
resources: ["apiservices"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
---
# Source: cert-manager/templates/rbac.yaml
# Issuer controller role
@@ -836,9 +837,11 @@
serviceAccountName: cert-manager-cainjector
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.12.2"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +853,9 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux
---
@@ -888,22 +894,32 @@
serviceAccountName: cert-manager
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.12.2"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.12.2
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -956,20 +972,27 @@
serviceAccountName: cert-manager-webhook
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.12.2"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1015,9 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1187,9 +1213,11 @@
serviceAccountName: cert-manager-startupapicheck
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-ctl:v1.12.2"
imagePullPolicy: IfNotPresent
args:
- check
@@ -1197,5 +1225,8 @@
- --wait=1m
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux |
60ed80d
to
80d9522
Compare
Path: @@ -51,6 +51,7 @@
app.kubernetes.io/name: webhook
app.kubernetes.io/instance: cert-manager
app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/managed-by: Helm
data:
---
# Source: cert-manager/templates/cainjector-rbac.yaml
@@ -76,13 +77,13 @@
verbs: ["get", "create", "update", "patch"]
- apiGroups: ["admissionregistration.k8s.io"]
resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiregistration.k8s.io"]
resources: ["apiservices"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
---
# Source: cert-manager/templates/rbac.yaml
# Issuer controller role
@@ -836,9 +837,11 @@
serviceAccountName: cert-manager-cainjector
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.12.3"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +853,9 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux
---
@@ -888,22 +894,32 @@
serviceAccountName: cert-manager
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.12.3"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.12.3
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -956,20 +972,27 @@
serviceAccountName: cert-manager-webhook
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.12.3"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1015,9 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1187,9 +1213,11 @@
serviceAccountName: cert-manager-startupapicheck
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-ctl:v1.12.3"
imagePullPolicy: IfNotPresent
args:
- check
@@ -1197,5 +1225,8 @@
- --wait=1m
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux |
80d9522
to
903d3b2
Compare
Path: @@ -51,6 +51,7 @@
app.kubernetes.io/name: webhook
app.kubernetes.io/instance: cert-manager
app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/managed-by: Helm
data:
---
# Source: cert-manager/templates/cainjector-rbac.yaml
@@ -76,13 +77,13 @@
verbs: ["get", "create", "update", "patch"]
- apiGroups: ["admissionregistration.k8s.io"]
resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiregistration.k8s.io"]
resources: ["apiservices"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
---
# Source: cert-manager/templates/rbac.yaml
# Issuer controller role
@@ -836,9 +837,11 @@
serviceAccountName: cert-manager-cainjector
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.12.4"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +853,9 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux
---
@@ -888,22 +894,32 @@
serviceAccountName: cert-manager
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.12.4"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.12.4
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -956,20 +972,27 @@
serviceAccountName: cert-manager-webhook
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.12.4"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1015,9 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1187,9 +1213,11 @@
serviceAccountName: cert-manager-startupapicheck
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-ctl:v1.12.4"
imagePullPolicy: IfNotPresent
args:
- check
@@ -1197,5 +1225,8 @@
- --wait=1m
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux |
903d3b2
to
d42181c
Compare
Path: @@ -40,6 +40,20 @@
app.kubernetes.io/component: "webhook"
app.kubernetes.io/managed-by: Helm
---
+# Source: cert-manager/templates/controller-config.yaml
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: cert-manager
+ namespace: default
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/managed-by: Helm
+data:
+---
# Source: cert-manager/templates/webhook-config.yaml
apiVersion: v1
kind: ConfigMap
@@ -51,6 +65,7 @@
app.kubernetes.io/name: webhook
app.kubernetes.io/instance: cert-manager
app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/managed-by: Helm
data:
---
# Source: cert-manager/templates/cainjector-rbac.yaml
@@ -76,13 +91,13 @@
verbs: ["get", "create", "update", "patch"]
- apiGroups: ["admissionregistration.k8s.io"]
resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiregistration.k8s.io"]
resources: ["apiservices"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
---
# Source: cert-manager/templates/rbac.yaml
# Issuer controller role
@@ -311,6 +326,23 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
+ name: cert-manager-cluster-view
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/managed-by: Helm
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["clusterissuers"]
+ verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
name: cert-manager-view
labels:
app: cert-manager
@@ -321,6 +353,7 @@
rbac.authorization.k8s.io/aggregate-to-view: "true"
rbac.authorization.k8s.io/aggregate-to-edit: "true"
rbac.authorization.k8s.io/aggregate-to-admin: "true"
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
rules:
- apiGroups: ["cert-manager.io"]
resources: ["certificates", "certificaterequests", "issuers"]
@@ -834,11 +867,14 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-cainjector
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.13.0"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +886,9 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux
---
@@ -886,24 +925,35 @@
prometheus.io/port: '9402'
spec:
serviceAccountName: cert-manager
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.13.0"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.13.0
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -954,22 +1004,30 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-webhook
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.13.0"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1050,9 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1062,10 +1123,6 @@
operator: "NotIn"
values:
- "true"
- - key: "name"
- operator: "NotIn"
- values:
- - default
rules:
- apiGroups:
- "cert-manager.io"
@@ -1185,11 +1242,14 @@
spec:
restartPolicy: OnFailure
serviceAccountName: cert-manager-startupapicheck
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-ctl:v1.13.0"
imagePullPolicy: IfNotPresent
args:
- check
@@ -1197,5 +1257,8 @@
- --wait=1m
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux |
d42181c
to
90aebfe
Compare
Path: @@ -40,6 +40,20 @@
app.kubernetes.io/component: "webhook"
app.kubernetes.io/managed-by: Helm
---
+# Source: cert-manager/templates/controller-config.yaml
+apiVersion: v1
+kind: ConfigMap
+metadata:
+ name: cert-manager
+ namespace: default
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/managed-by: Helm
+data:
+---
# Source: cert-manager/templates/webhook-config.yaml
apiVersion: v1
kind: ConfigMap
@@ -51,6 +65,7 @@
app.kubernetes.io/name: webhook
app.kubernetes.io/instance: cert-manager
app.kubernetes.io/component: "webhook"
+ app.kubernetes.io/managed-by: Helm
data:
---
# Source: cert-manager/templates/cainjector-rbac.yaml
@@ -76,13 +91,13 @@
verbs: ["get", "create", "update", "patch"]
- apiGroups: ["admissionregistration.k8s.io"]
resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiregistration.k8s.io"]
resources: ["apiservices"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
---
# Source: cert-manager/templates/rbac.yaml
# Issuer controller role
@@ -311,6 +326,23 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
+ name: cert-manager-cluster-view
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/managed-by: Helm
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["clusterissuers"]
+ verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
name: cert-manager-view
labels:
app: cert-manager
@@ -321,6 +353,7 @@
rbac.authorization.k8s.io/aggregate-to-view: "true"
rbac.authorization.k8s.io/aggregate-to-edit: "true"
rbac.authorization.k8s.io/aggregate-to-admin: "true"
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
rules:
- apiGroups: ["cert-manager.io"]
resources: ["certificates", "certificaterequests", "issuers"]
@@ -834,11 +867,14 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-cainjector
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.13.1"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +886,9 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux
---
@@ -886,24 +925,35 @@
prometheus.io/port: '9402'
spec:
serviceAccountName: cert-manager
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.13.1"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.13.1
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -954,22 +1004,30 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-webhook
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.13.1"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1050,9 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1062,10 +1123,6 @@
operator: "NotIn"
values:
- "true"
- - key: "name"
- operator: "NotIn"
- values:
- - default
rules:
- apiGroups:
- "cert-manager.io"
@@ -1185,11 +1242,14 @@
spec:
restartPolicy: OnFailure
serviceAccountName: cert-manager-startupapicheck
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-ctl:v1.13.1"
imagePullPolicy: IfNotPresent
args:
- check
@@ -1197,5 +1257,8 @@
- --wait=1m
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
nodeSelector:
kubernetes.io/os: linux |
3bab1e7
to
5c5f8d8
Compare
Path: @@ -40,19 +40,6 @@
app.kubernetes.io/component: "webhook"
app.kubernetes.io/managed-by: Helm
---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cert-manager-webhook
- namespace: default
- labels:
- app: webhook
- app.kubernetes.io/name: webhook
- app.kubernetes.io/instance: cert-manager
- app.kubernetes.io/component: "webhook"
-data:
----
# Source: cert-manager/templates/cainjector-rbac.yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
@@ -76,13 +63,13 @@
verbs: ["get", "create", "update", "patch"]
- apiGroups: ["admissionregistration.k8s.io"]
resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiregistration.k8s.io"]
resources: ["apiservices"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
---
# Source: cert-manager/templates/rbac.yaml
# Issuer controller role
@@ -311,6 +298,23 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
+ name: cert-manager-cluster-view
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/managed-by: Helm
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["clusterissuers"]
+ verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
name: cert-manager-view
labels:
app: cert-manager
@@ -321,6 +325,7 @@
rbac.authorization.k8s.io/aggregate-to-view: "true"
rbac.authorization.k8s.io/aggregate-to-edit: "true"
rbac.authorization.k8s.io/aggregate-to-admin: "true"
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
rules:
- apiGroups: ["cert-manager.io"]
resources: ["certificates", "certificaterequests", "issuers"]
@@ -834,11 +839,14 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-cainjector
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.14.3"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +858,10 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux
---
@@ -886,24 +898,36 @@
prometheus.io/port: '9402'
spec:
serviceAccountName: cert-manager
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.14.3"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.14.3
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -916,6 +940,19 @@
requests:
cpu: 25m
memory: 263M
+ # LivenessProbe settings are based on those used for the Kubernetes
+ # controller-manager. See:
+ # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+ livenessProbe:
+ httpGet:
+ port: http-healthz
+ path: /livez
+ scheme: HTTP
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ timeoutSeconds: 15
+ successThreshold: 1
+ failureThreshold: 8
nodeSelector:
kubernetes.io/os: linux
worker: true
@@ -954,22 +991,30 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-webhook
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.14.3"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1037,10 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1018,20 +1067,18 @@
rules:
- apiGroups:
- "cert-manager.io"
- - "acme.cert-manager.io"
apiVersions:
- "v1"
operations:
- CREATE
- - UPDATE
resources:
- - "*/*"
+ - "certificaterequests"
admissionReviewVersions: ["v1"]
# This webhook only accepts v1 cert-manager resources.
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
# Only include 'sideEffects' field in Kubernetes 1.12+
sideEffects: None
@@ -1058,14 +1105,10 @@
- name: webhook.cert-manager.io
namespaceSelector:
matchExpressions:
- - key: "cert-manager.io/disable-validation"
- operator: "NotIn"
+ - key: cert-manager.io/disable-validation
+ operator: NotIn
values:
- "true"
- - key: "name"
- operator: "NotIn"
- values:
- - default
rules:
- apiGroups:
- "cert-manager.io"
@@ -1082,7 +1125,7 @@
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
sideEffects: None
clientConfig:
@@ -1185,17 +1228,25 @@
spec:
restartPolicy: OnFailure
serviceAccountName: cert-manager-startupapicheck
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-startupapicheck:v1.14.3"
imagePullPolicy: IfNotPresent
args:
- check
- api
- --wait=1m
+ - -v
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux |
5c5f8d8
to
1f58f2b
Compare
Path: @@ -40,19 +40,6 @@
app.kubernetes.io/component: "webhook"
app.kubernetes.io/managed-by: Helm
---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cert-manager-webhook
- namespace: default
- labels:
- app: webhook
- app.kubernetes.io/name: webhook
- app.kubernetes.io/instance: cert-manager
- app.kubernetes.io/component: "webhook"
-data:
----
# Source: cert-manager/templates/cainjector-rbac.yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
@@ -76,13 +63,13 @@
verbs: ["get", "create", "update", "patch"]
- apiGroups: ["admissionregistration.k8s.io"]
resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiregistration.k8s.io"]
resources: ["apiservices"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
---
# Source: cert-manager/templates/rbac.yaml
# Issuer controller role
@@ -311,6 +298,23 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
+ name: cert-manager-cluster-view
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/managed-by: Helm
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["clusterissuers"]
+ verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
name: cert-manager-view
labels:
app: cert-manager
@@ -321,6 +325,7 @@
rbac.authorization.k8s.io/aggregate-to-view: "true"
rbac.authorization.k8s.io/aggregate-to-edit: "true"
rbac.authorization.k8s.io/aggregate-to-admin: "true"
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
rules:
- apiGroups: ["cert-manager.io"]
resources: ["certificates", "certificaterequests", "issuers"]
@@ -834,11 +839,14 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-cainjector
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.14.4"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +858,10 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux
---
@@ -886,24 +898,36 @@
prometheus.io/port: '9402'
spec:
serviceAccountName: cert-manager
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.14.4"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.14.4
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -916,6 +940,19 @@
requests:
cpu: 25m
memory: 263M
+ # LivenessProbe settings are based on those used for the Kubernetes
+ # controller-manager. See:
+ # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+ livenessProbe:
+ httpGet:
+ port: http-healthz
+ path: /livez
+ scheme: HTTP
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ timeoutSeconds: 15
+ successThreshold: 1
+ failureThreshold: 8
nodeSelector:
kubernetes.io/os: linux
worker: true
@@ -954,22 +991,30 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-webhook
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.14.4"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1037,10 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1018,20 +1067,18 @@
rules:
- apiGroups:
- "cert-manager.io"
- - "acme.cert-manager.io"
apiVersions:
- "v1"
operations:
- CREATE
- - UPDATE
resources:
- - "*/*"
+ - "certificaterequests"
admissionReviewVersions: ["v1"]
# This webhook only accepts v1 cert-manager resources.
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
# Only include 'sideEffects' field in Kubernetes 1.12+
sideEffects: None
@@ -1058,14 +1105,10 @@
- name: webhook.cert-manager.io
namespaceSelector:
matchExpressions:
- - key: "cert-manager.io/disable-validation"
- operator: "NotIn"
+ - key: cert-manager.io/disable-validation
+ operator: NotIn
values:
- "true"
- - key: "name"
- operator: "NotIn"
- values:
- - default
rules:
- apiGroups:
- "cert-manager.io"
@@ -1082,7 +1125,7 @@
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
sideEffects: None
clientConfig:
@@ -1185,17 +1228,25 @@
spec:
restartPolicy: OnFailure
serviceAccountName: cert-manager-startupapicheck
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-startupapicheck:v1.14.4"
imagePullPolicy: IfNotPresent
args:
- check
- api
- --wait=1m
+ - -v
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux |
1f58f2b
to
2780c12
Compare
Path: @@ -40,19 +40,6 @@
app.kubernetes.io/component: "webhook"
app.kubernetes.io/managed-by: Helm
---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cert-manager-webhook
- namespace: default
- labels:
- app: webhook
- app.kubernetes.io/name: webhook
- app.kubernetes.io/instance: cert-manager
- app.kubernetes.io/component: "webhook"
-data:
----
# Source: cert-manager/templates/cainjector-rbac.yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
@@ -76,13 +63,13 @@
verbs: ["get", "create", "update", "patch"]
- apiGroups: ["admissionregistration.k8s.io"]
resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiregistration.k8s.io"]
resources: ["apiservices"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
---
# Source: cert-manager/templates/rbac.yaml
# Issuer controller role
@@ -311,6 +298,23 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
+ name: cert-manager-cluster-view
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/managed-by: Helm
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["clusterissuers"]
+ verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
name: cert-manager-view
labels:
app: cert-manager
@@ -321,6 +325,7 @@
rbac.authorization.k8s.io/aggregate-to-view: "true"
rbac.authorization.k8s.io/aggregate-to-edit: "true"
rbac.authorization.k8s.io/aggregate-to-admin: "true"
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
rules:
- apiGroups: ["cert-manager.io"]
resources: ["certificates", "certificaterequests", "issuers"]
@@ -834,11 +839,14 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-cainjector
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.14.5"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +858,10 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux
---
@@ -886,24 +898,36 @@
prometheus.io/port: '9402'
spec:
serviceAccountName: cert-manager
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.14.5"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.14.5
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -916,6 +940,19 @@
requests:
cpu: 25m
memory: 263M
+ # LivenessProbe settings are based on those used for the Kubernetes
+ # controller-manager. See:
+ # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+ livenessProbe:
+ httpGet:
+ port: http-healthz
+ path: /livez
+ scheme: HTTP
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ timeoutSeconds: 15
+ successThreshold: 1
+ failureThreshold: 8
nodeSelector:
kubernetes.io/os: linux
worker: true
@@ -954,22 +991,30 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-webhook
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.14.5"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1037,10 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1018,20 +1067,18 @@
rules:
- apiGroups:
- "cert-manager.io"
- - "acme.cert-manager.io"
apiVersions:
- "v1"
operations:
- CREATE
- - UPDATE
resources:
- - "*/*"
+ - "certificaterequests"
admissionReviewVersions: ["v1"]
# This webhook only accepts v1 cert-manager resources.
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
# Only include 'sideEffects' field in Kubernetes 1.12+
sideEffects: None
@@ -1058,14 +1105,10 @@
- name: webhook.cert-manager.io
namespaceSelector:
matchExpressions:
- - key: "cert-manager.io/disable-validation"
- operator: "NotIn"
+ - key: cert-manager.io/disable-validation
+ operator: NotIn
values:
- "true"
- - key: "name"
- operator: "NotIn"
- values:
- - default
rules:
- apiGroups:
- "cert-manager.io"
@@ -1082,7 +1125,7 @@
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
sideEffects: None
clientConfig:
@@ -1185,17 +1228,25 @@
spec:
restartPolicy: OnFailure
serviceAccountName: cert-manager-startupapicheck
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-startupapicheck:v1.14.5"
imagePullPolicy: IfNotPresent
args:
- check
- api
- --wait=1m
+ - -v
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux |
2780c12
to
bb62426
Compare
Path: @@ -40,19 +40,6 @@
app.kubernetes.io/component: "webhook"
app.kubernetes.io/managed-by: Helm
---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cert-manager-webhook
- namespace: default
- labels:
- app: webhook
- app.kubernetes.io/name: webhook
- app.kubernetes.io/instance: cert-manager
- app.kubernetes.io/component: "webhook"
-data:
----
# Source: cert-manager/templates/cainjector-rbac.yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
@@ -76,13 +63,13 @@
verbs: ["get", "create", "update", "patch"]
- apiGroups: ["admissionregistration.k8s.io"]
resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiregistration.k8s.io"]
resources: ["apiservices"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
---
# Source: cert-manager/templates/rbac.yaml
# Issuer controller role
@@ -311,6 +298,23 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
+ name: cert-manager-cluster-view
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/managed-by: Helm
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["clusterissuers"]
+ verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
name: cert-manager-view
labels:
app: cert-manager
@@ -321,6 +325,7 @@
rbac.authorization.k8s.io/aggregate-to-view: "true"
rbac.authorization.k8s.io/aggregate-to-edit: "true"
rbac.authorization.k8s.io/aggregate-to-admin: "true"
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
rules:
- apiGroups: ["cert-manager.io"]
resources: ["certificates", "certificaterequests", "issuers"]
@@ -369,7 +374,9 @@
- apiGroups: ["cert-manager.io"]
resources: ["signers"]
verbs: ["approve"]
- resourceNames: ["issuers.cert-manager.io/*", "clusterissuers.cert-manager.io/*"]
+ resourceNames:
+ - "issuers.cert-manager.io/*"
+ - "clusterissuers.cert-manager.io/*"
---
# Source: cert-manager/templates/rbac.yaml
# Permission to:
@@ -834,11 +841,14 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-cainjector
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.15.0"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +860,10 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux
---
@@ -886,24 +900,36 @@
prometheus.io/port: '9402'
spec:
serviceAccountName: cert-manager
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.15.0"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.15.0
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -916,6 +942,19 @@
requests:
cpu: 25m
memory: 263M
+ # LivenessProbe settings are based on those used for the Kubernetes
+ # controller-manager. See:
+ # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+ livenessProbe:
+ httpGet:
+ port: http-healthz
+ path: /livez
+ scheme: HTTP
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ timeoutSeconds: 15
+ successThreshold: 1
+ failureThreshold: 8
nodeSelector:
kubernetes.io/os: linux
worker: true
@@ -954,22 +993,30 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-webhook
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.15.0"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1039,10 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1000,6 +1051,37 @@
nodeSelector:
kubernetes.io/os: linux
---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+#
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
# Source: cert-manager/templates/webhook-mutating-webhook.yaml
apiVersion: admissionregistration.k8s.io/v1
kind: MutatingWebhookConfiguration
@@ -1018,20 +1100,18 @@
rules:
- apiGroups:
- "cert-manager.io"
- - "acme.cert-manager.io"
apiVersions:
- "v1"
operations:
- CREATE
- - UPDATE
resources:
- - "*/*"
+ - "certificaterequests"
admissionReviewVersions: ["v1"]
# This webhook only accepts v1 cert-manager resources.
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
# Only include 'sideEffects' field in Kubernetes 1.12+
sideEffects: None
@@ -1058,14 +1138,10 @@
- name: webhook.cert-manager.io
namespaceSelector:
matchExpressions:
- - key: "cert-manager.io/disable-validation"
- operator: "NotIn"
+ - key: cert-manager.io/disable-validation
+ operator: NotIn
values:
- "true"
- - key: "name"
- operator: "NotIn"
- values:
- - default
rules:
- apiGroups:
- "cert-manager.io"
@@ -1082,7 +1158,7 @@
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
sideEffects: None
clientConfig:
@@ -1185,17 +1261,25 @@
spec:
restartPolicy: OnFailure
serviceAccountName: cert-manager-startupapicheck
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-startupapicheck:v1.15.0"
imagePullPolicy: IfNotPresent
args:
- check
- api
- --wait=1m
+ - -v
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux |
bb62426
to
d4b0cfa
Compare
Path: @@ -40,19 +40,6 @@
app.kubernetes.io/component: "webhook"
app.kubernetes.io/managed-by: Helm
---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cert-manager-webhook
- namespace: default
- labels:
- app: webhook
- app.kubernetes.io/name: webhook
- app.kubernetes.io/instance: cert-manager
- app.kubernetes.io/component: "webhook"
-data:
----
# Source: cert-manager/templates/cainjector-rbac.yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
@@ -76,13 +63,13 @@
verbs: ["get", "create", "update", "patch"]
- apiGroups: ["admissionregistration.k8s.io"]
resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiregistration.k8s.io"]
resources: ["apiservices"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
---
# Source: cert-manager/templates/rbac.yaml
# Issuer controller role
@@ -311,6 +298,23 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
+ name: cert-manager-cluster-view
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/managed-by: Helm
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["clusterissuers"]
+ verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
name: cert-manager-view
labels:
app: cert-manager
@@ -321,6 +325,7 @@
rbac.authorization.k8s.io/aggregate-to-view: "true"
rbac.authorization.k8s.io/aggregate-to-edit: "true"
rbac.authorization.k8s.io/aggregate-to-admin: "true"
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
rules:
- apiGroups: ["cert-manager.io"]
resources: ["certificates", "certificaterequests", "issuers"]
@@ -369,7 +374,9 @@
- apiGroups: ["cert-manager.io"]
resources: ["signers"]
verbs: ["approve"]
- resourceNames: ["issuers.cert-manager.io/*", "clusterissuers.cert-manager.io/*"]
+ resourceNames:
+ - "issuers.cert-manager.io/*"
+ - "clusterissuers.cert-manager.io/*"
---
# Source: cert-manager/templates/rbac.yaml
# Permission to:
@@ -834,11 +841,14 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-cainjector
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.15.1"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +860,10 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux
---
@@ -886,24 +900,36 @@
prometheus.io/port: '9402'
spec:
serviceAccountName: cert-manager
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.15.1"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.15.1
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -916,6 +942,19 @@
requests:
cpu: 25m
memory: 263M
+ # LivenessProbe settings are based on those used for the Kubernetes
+ # controller-manager. See:
+ # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+ livenessProbe:
+ httpGet:
+ port: http-healthz
+ path: /livez
+ scheme: HTTP
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ timeoutSeconds: 15
+ successThreshold: 1
+ failureThreshold: 8
nodeSelector:
kubernetes.io/os: linux
worker: true
@@ -954,22 +993,30 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-webhook
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.15.1"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1039,10 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1000,6 +1051,37 @@
nodeSelector:
kubernetes.io/os: linux
---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+#
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
# Source: cert-manager/templates/webhook-mutating-webhook.yaml
apiVersion: admissionregistration.k8s.io/v1
kind: MutatingWebhookConfiguration
@@ -1018,20 +1100,18 @@
rules:
- apiGroups:
- "cert-manager.io"
- - "acme.cert-manager.io"
apiVersions:
- "v1"
operations:
- CREATE
- - UPDATE
resources:
- - "*/*"
+ - "certificaterequests"
admissionReviewVersions: ["v1"]
# This webhook only accepts v1 cert-manager resources.
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
# Only include 'sideEffects' field in Kubernetes 1.12+
sideEffects: None
@@ -1058,14 +1138,10 @@
- name: webhook.cert-manager.io
namespaceSelector:
matchExpressions:
- - key: "cert-manager.io/disable-validation"
- operator: "NotIn"
+ - key: cert-manager.io/disable-validation
+ operator: NotIn
values:
- "true"
- - key: "name"
- operator: "NotIn"
- values:
- - default
rules:
- apiGroups:
- "cert-manager.io"
@@ -1082,7 +1158,7 @@
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
sideEffects: None
clientConfig:
@@ -1185,17 +1261,25 @@
spec:
restartPolicy: OnFailure
serviceAccountName: cert-manager-startupapicheck
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-startupapicheck:v1.15.1"
imagePullPolicy: IfNotPresent
args:
- check
- api
- --wait=1m
+ - -v
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux |
d4b0cfa
to
950a18e
Compare
Path: @@ -40,19 +40,6 @@
app.kubernetes.io/component: "webhook"
app.kubernetes.io/managed-by: Helm
---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cert-manager-webhook
- namespace: default
- labels:
- app: webhook
- app.kubernetes.io/name: webhook
- app.kubernetes.io/instance: cert-manager
- app.kubernetes.io/component: "webhook"
-data:
----
# Source: cert-manager/templates/cainjector-rbac.yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
@@ -76,13 +63,13 @@
verbs: ["get", "create", "update", "patch"]
- apiGroups: ["admissionregistration.k8s.io"]
resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiregistration.k8s.io"]
resources: ["apiservices"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
---
# Source: cert-manager/templates/rbac.yaml
# Issuer controller role
@@ -311,6 +298,23 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
+ name: cert-manager-cluster-view
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/managed-by: Helm
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["clusterissuers"]
+ verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
name: cert-manager-view
labels:
app: cert-manager
@@ -321,6 +325,7 @@
rbac.authorization.k8s.io/aggregate-to-view: "true"
rbac.authorization.k8s.io/aggregate-to-edit: "true"
rbac.authorization.k8s.io/aggregate-to-admin: "true"
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
rules:
- apiGroups: ["cert-manager.io"]
resources: ["certificates", "certificaterequests", "issuers"]
@@ -369,7 +374,9 @@
- apiGroups: ["cert-manager.io"]
resources: ["signers"]
verbs: ["approve"]
- resourceNames: ["issuers.cert-manager.io/*", "clusterissuers.cert-manager.io/*"]
+ resourceNames:
+ - "issuers.cert-manager.io/*"
+ - "clusterissuers.cert-manager.io/*"
---
# Source: cert-manager/templates/rbac.yaml
# Permission to:
@@ -834,11 +841,14 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-cainjector
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.15.2"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +860,10 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux
---
@@ -886,24 +900,36 @@
prometheus.io/port: '9402'
spec:
serviceAccountName: cert-manager
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.15.2"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.15.2
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -916,6 +942,19 @@
requests:
cpu: 25m
memory: 263M
+ # LivenessProbe settings are based on those used for the Kubernetes
+ # controller-manager. See:
+ # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+ livenessProbe:
+ httpGet:
+ port: http-healthz
+ path: /livez
+ scheme: HTTP
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ timeoutSeconds: 15
+ successThreshold: 1
+ failureThreshold: 8
nodeSelector:
kubernetes.io/os: linux
worker: true
@@ -954,22 +993,30 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-webhook
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.15.2"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1039,10 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1000,6 +1051,37 @@
nodeSelector:
kubernetes.io/os: linux
---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+#
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
# Source: cert-manager/templates/webhook-mutating-webhook.yaml
apiVersion: admissionregistration.k8s.io/v1
kind: MutatingWebhookConfiguration
@@ -1018,20 +1100,18 @@
rules:
- apiGroups:
- "cert-manager.io"
- - "acme.cert-manager.io"
apiVersions:
- "v1"
operations:
- CREATE
- - UPDATE
resources:
- - "*/*"
+ - "certificaterequests"
admissionReviewVersions: ["v1"]
# This webhook only accepts v1 cert-manager resources.
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
# Only include 'sideEffects' field in Kubernetes 1.12+
sideEffects: None
@@ -1058,14 +1138,10 @@
- name: webhook.cert-manager.io
namespaceSelector:
matchExpressions:
- - key: "cert-manager.io/disable-validation"
- operator: "NotIn"
+ - key: cert-manager.io/disable-validation
+ operator: NotIn
values:
- "true"
- - key: "name"
- operator: "NotIn"
- values:
- - default
rules:
- apiGroups:
- "cert-manager.io"
@@ -1082,7 +1158,7 @@
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
sideEffects: None
clientConfig:
@@ -1185,17 +1261,25 @@
spec:
restartPolicy: OnFailure
serviceAccountName: cert-manager-startupapicheck
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-startupapicheck:v1.15.2"
imagePullPolicy: IfNotPresent
args:
- check
- api
- --wait=1m
+ - -v
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux |
950a18e
to
1477af7
Compare
Path: @@ -40,19 +40,6 @@
app.kubernetes.io/component: "webhook"
app.kubernetes.io/managed-by: Helm
---
-# Source: cert-manager/templates/webhook-config.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: cert-manager-webhook
- namespace: default
- labels:
- app: webhook
- app.kubernetes.io/name: webhook
- app.kubernetes.io/instance: cert-manager
- app.kubernetes.io/component: "webhook"
-data:
----
# Source: cert-manager/templates/cainjector-rbac.yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
@@ -76,13 +63,13 @@
verbs: ["get", "create", "update", "patch"]
- apiGroups: ["admissionregistration.k8s.io"]
resources: ["validatingwebhookconfigurations", "mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiregistration.k8s.io"]
resources: ["apiservices"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
- apiGroups: ["apiextensions.k8s.io"]
resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch", "update"]
+ verbs: ["get", "list", "watch", "update", "patch"]
---
# Source: cert-manager/templates/rbac.yaml
# Issuer controller role
@@ -311,6 +298,23 @@
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
+ name: cert-manager-cluster-view
+ labels:
+ app: cert-manager
+ app.kubernetes.io/name: cert-manager
+ app.kubernetes.io/instance: cert-manager
+ app.kubernetes.io/component: "controller"
+ app.kubernetes.io/managed-by: Helm
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
+rules:
+ - apiGroups: ["cert-manager.io"]
+ resources: ["clusterissuers"]
+ verbs: ["get", "list", "watch"]
+---
+# Source: cert-manager/templates/rbac.yaml
+apiVersion: rbac.authorization.k8s.io/v1
+kind: ClusterRole
+metadata:
name: cert-manager-view
labels:
app: cert-manager
@@ -321,6 +325,7 @@
rbac.authorization.k8s.io/aggregate-to-view: "true"
rbac.authorization.k8s.io/aggregate-to-edit: "true"
rbac.authorization.k8s.io/aggregate-to-admin: "true"
+ rbac.authorization.k8s.io/aggregate-to-cluster-reader: "true"
rules:
- apiGroups: ["cert-manager.io"]
resources: ["certificates", "certificaterequests", "issuers"]
@@ -369,7 +374,9 @@
- apiGroups: ["cert-manager.io"]
resources: ["signers"]
verbs: ["approve"]
- resourceNames: ["issuers.cert-manager.io/*", "clusterissuers.cert-manager.io/*"]
+ resourceNames:
+ - "issuers.cert-manager.io/*"
+ - "clusterissuers.cert-manager.io/*"
---
# Source: cert-manager/templates/rbac.yaml
# Permission to:
@@ -834,11 +841,14 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-cainjector
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-cainjector:v1.9.1"
+ - name: cert-manager-cainjector
+ image: "quay.io/jetstack/cert-manager-cainjector:v1.15.3"
imagePullPolicy: IfNotPresent
args:
- --v=2
@@ -850,6 +860,10 @@
fieldPath: metadata.namespace
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux
---
@@ -886,24 +900,36 @@
prometheus.io/port: '9402'
spec:
serviceAccountName: cert-manager
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-controller:v1.9.1"
+ - name: cert-manager-controller
+ image: "quay.io/jetstack/cert-manager-controller:v1.15.3"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --cluster-resource-namespace=$(POD_NAMESPACE)
- --leader-election-namespace=kube-system
+ - --acme-http01-solver-image=quay.io/jetstack/cert-manager-acmesolver:v1.15.3
- --dns01-recursive-nameservers=1.1.1.1:53,1.0.0.1:53
- --dns01-recursive-nameservers-only
+ - --max-concurrent-challenges=60
ports:
- containerPort: 9402
name: http-metrics
protocol: TCP
+ - containerPort: 9403
+ name: http-healthz
+ protocol: TCP
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -916,6 +942,19 @@
requests:
cpu: 25m
memory: 263M
+ # LivenessProbe settings are based on those used for the Kubernetes
+ # controller-manager. See:
+ # https://github.com/kubernetes/kubernetes/blob/806b30170c61a38fedd54cc9ede4cd6275a1ad3b/cmd/kubeadm/app/util/staticpod/utils.go#L241-L245
+ livenessProbe:
+ httpGet:
+ port: http-healthz
+ path: /livez
+ scheme: HTTP
+ initialDelaySeconds: 10
+ periodSeconds: 10
+ timeoutSeconds: 15
+ successThreshold: 1
+ failureThreshold: 8
nodeSelector:
kubernetes.io/os: linux
worker: true
@@ -954,22 +993,30 @@
app.kubernetes.io/managed-by: Helm
spec:
serviceAccountName: cert-manager-webhook
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-webhook:v1.9.1"
+ - name: cert-manager-webhook
+ image: "quay.io/jetstack/cert-manager-webhook:v1.15.3"
imagePullPolicy: IfNotPresent
args:
- --v=2
- --secure-port=10250
- --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
- --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
- - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.default,cert-manager-webhook.default.svc
+ - --dynamic-serving-dns-names=cert-manager-webhook
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE)
+ - --dynamic-serving-dns-names=cert-manager-webhook.$(POD_NAMESPACE).svc
ports:
- name: https
protocol: TCP
containerPort: 10250
+ - name: healthcheck
+ protocol: TCP
+ containerPort: 6080
livenessProbe:
httpGet:
path: /livez
@@ -992,6 +1039,10 @@
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
env:
- name: POD_NAMESPACE
valueFrom:
@@ -1000,6 +1051,37 @@
nodeSelector:
kubernetes.io/os: linux
---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+#
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
+{}
+
+# Source: cert-manager/templates/crds.yaml
+# START crd
+---
# Source: cert-manager/templates/webhook-mutating-webhook.yaml
apiVersion: admissionregistration.k8s.io/v1
kind: MutatingWebhookConfiguration
@@ -1018,20 +1100,18 @@
rules:
- apiGroups:
- "cert-manager.io"
- - "acme.cert-manager.io"
apiVersions:
- "v1"
operations:
- CREATE
- - UPDATE
resources:
- - "*/*"
+ - "certificaterequests"
admissionReviewVersions: ["v1"]
# This webhook only accepts v1 cert-manager resources.
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
# Only include 'sideEffects' field in Kubernetes 1.12+
sideEffects: None
@@ -1058,14 +1138,10 @@
- name: webhook.cert-manager.io
namespaceSelector:
matchExpressions:
- - key: "cert-manager.io/disable-validation"
- operator: "NotIn"
+ - key: cert-manager.io/disable-validation
+ operator: NotIn
values:
- "true"
- - key: "name"
- operator: "NotIn"
- values:
- - default
rules:
- apiGroups:
- "cert-manager.io"
@@ -1082,7 +1158,7 @@
# Equivalent matchPolicy ensures that non-v1 resource requests are sent to
# this webhook (after the resources have been converted to v1).
matchPolicy: Equivalent
- timeoutSeconds: 10
+ timeoutSeconds: 30
failurePolicy: Fail
sideEffects: None
clientConfig:
@@ -1185,17 +1261,25 @@
spec:
restartPolicy: OnFailure
serviceAccountName: cert-manager-startupapicheck
+ enableServiceLinks: false
securityContext:
runAsNonRoot: true
+ seccompProfile:
+ type: RuntimeDefault
containers:
- - name: cert-manager
- image: "quay.io/jetstack/cert-manager-ctl:v1.9.1"
+ - name: cert-manager-startupapicheck
+ image: "quay.io/jetstack/cert-manager-startupapicheck:v1.15.3"
imagePullPolicy: IfNotPresent
args:
- check
- api
- --wait=1m
+ - -v
securityContext:
allowPrivilegeEscalation: false
+ capabilities:
+ drop:
+ - ALL
+ readOnlyRootFilesystem: true
nodeSelector:
kubernetes.io/os: linux |
1477af7
to
ae03bc1
Compare
PR-Agent was enabled for this repository. To continue using it, please link your git user with your CodiumAI identity here. CI Failure Feedback 🧐
✨ CI feedback usage guide:The CI feedback tool (
In addition to being automatically triggered, the tool can also be invoked manually by commenting on a PR:
where Configuration options
See more information about the |
ae03bc1
to
fec0440
Compare
PR-Agent was enabled for this repository. To continue using it, please link your git user with your CodiumAI identity here. CI Failure Feedback 🧐
✨ CI feedback usage guide:The CI feedback tool (
In addition to being automatically triggered, the tool can also be invoked manually by commenting on a PR:
where Configuration options
See more information about the |
Signed-off-by: Danny Froberg <[email protected]>
fec0440
to
8521d06
Compare
This PR contains the following updates:
v1.9.1
->v1.16.2
Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
cert-manager/cert-manager (cert-manager)
v1.16.2
Compare Source
v1.16.1
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
The cert-manager 1.16 release includes: new Helm chart features, more Prometheus metrics, memory optimizations, and various improvements and bug fixes for the ACME issuer and Venafi Issuer.
📖 Read the complete 1.16 release notes before upgrading.
📜Changes since
v1.16.0
Bug or Regression
@inteon
)podDisruptionBudget.minAvailable
andpodDisruptionBudget.maxAvailable
values. (#7345,@inteon
)enabled
to be set as a value to toggle cert-manager as a dependency. (#7356,@inteon
)v1.16.0
caused cert-manager's ACME ClusterIssuer to look in the wrong namespace for resources required for the issuance (e.g. credential Secrets). This is now fixed inv1.16.1
. (#7342,@inteon
)v1.16.0
Compare Source
v1.15.4
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
This patch release of cert-manager 1.15 makes several changes to how PEM input is validated, adding maximum sizes appropriate to the type of PEM data which is being parsed.
This is to prevent an unacceptable slow-down in parsing specially crafted PEM data. The issue was found by Google's OSS-Fuzz project.
The issue is low severity; to exploit the PEM issue would require privileged access which would likely allow Denial-of-Service through other methods.
In addition, since most PEM data parsed by cert-manager comes from
ConfigMap
orSecret
resources which havea max size limit of approximately 1MB, it's difficult to force cert-manager to parse large amounts of PEM data.
Further information will be published in a security advisory when all supported cert-manager releases have been patched.
In addition, the version of Go used to build cert-manager 1.15 was updated along with the base images, and a Route53 bug fix was backported.
Changes by Kind
Bug or Regression
Other (Cleanup or Flake)
v1.15.3
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
🔗 See v1.15.0 for more information about cert-manager 1.15 and read-before-upgrade info.
📜 Changes since
v1.15.2
Bug or Regression
v1.15.2
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
🔗 See v1.15.0 for more information about cert-manager 1.15 and read-before-upgrade info.
📜 Changes since
v1.15.1
Bug or Regression
route53
: explicitly set theaws-global
STS region which is now required by thegithub.com/aws/aws-sdk-go-v2
library. (#7189,@cert-manager-bot
)grpc-go
to fixGHSA-xr7q-jx4m-x55m
(#7167,@SgtCoDFish
)@cert-manager-bot
)endpointAdditionalProperties
in thePodMonitor
template of the Helm chart (#7191,@inteon
)HTTPRoute
resources (#7186,@cert-manager-bot
)golang
from1.22.3
to1.22.5
(#7165,@github-actions
)v1.15.1
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
🔗 See v1.15.0 for more information about cert-manager 1.15 and read-before-upgrade info.
📜 Changes since v1.15.0
Bug or Regression
Other (Cleanup or Flake)
v1.15.0
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
cert-manager 1.15 promotes several features to beta, including GatewayAPI support (
ExperimentalGatewayAPISupport
), the ability to provide a subject in the Certificate that will be used literally in the CertificateSigningRequest (LiteralCertificateSubject
) and the outputting of additional certificate formats (AdditionalCertificateOutputFormats
).Community
Thanks again to all open-source contributors with commits in this release, including: @Pionerd, @SgtCoDFish, @ThatsMrTalbot, @andrey-dubnik, @bwaldrep, @eplightning, @erikgb, @findnature, @gplessis, @import-shiburin, @inteon, @jkroepke, @lunarwhite, @mangeshhambarde, @pwhitehead-splunk & @rodrigorfk, @wallrj.
Thanks also to the following cert-manager maintainers for their contributions during this release: @SgtCoDFish, @SpectralHiss, @ThatsMrTalbot, @hawksight, @inteon, @maelvls & @wallrj.
Equally thanks to everyone who provided feedback, helped users and raised issues on GitHub and Slack and joined our meetings!
Thanks also to the CNCF, which provides resources and support, and to the AWS open source team for being good community members and for their maintenance of the PrivateCA Issuer.
In addition, massive thanks to Venafi for contributing developer time and resources towards the continued maintenance of cert-manager projects.
Changes by Kind
Feature
--enable-gateway-api
flag to enable the integration. (#6961, @ThatsMrTalbot)For example:
cert-manager-certificaterequests-issuer-venafi/v1.15.0+(linux/amd64)+cert-manager/ef068a59008f6ed919b98a7177921ddc9e297200
. (#6865, @wallrj)LiteralCertificateSubject
feature to Beta. (#7030, @inteon)extraObjects
; a list of yaml manifests which will helm will install and uninstall with the cert-manager manifests. (#6424, @gplessis)cert-manager.io/allow-direct-injection
in annotations (#6801, @jkroepke)Design
Bug or Regression
preferredChain
is configured. (#6755, @import-shiburin)disableAutoApproval
andapproveSignerNames
Helm chart options. (#7054, @inteon)Other (Cleanup or Flake)
crds.keep
andcrds.enabled
Helm options can now be used instead of theinstallCRDs
option. (#6760, @inteon)slices
andk8s.io/apimachinery/pkg/util
packages.Removed deprecated CSR functions which have been replaced with other functions in the
pkg/util/pki
package. (#6730, @inteon)cmctl
andkubectl cert-manger
have been moved to the https://github.com/cert-manager/cmctl repo and will be versioned separately starting with cmctl v2.0.0 (#6663, @inteon)pkg/util/pki/ParseSubjectStringToRawDERBytes
function. (#6994, @inteon)--controllers
flag only specifies disabled controllers, the default controllers are now enabled implicitly. (#7054, @inteon)GO-2024-2824
. (#6996, @github-actions[bot])v1.14.7
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
📜 Changes since v1.14.6
Bugfixes
Other (Cleanup or Flake)
v1.14.6
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
📜 Changes since v1.14.5
Other (Cleanup or Flake)
v1.14.5
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
v1.14.5
fixes a bug in the DigitalOcean DNS-01 provider which could cause incorrect DNS records to be deleted when using a domain with a CNAME. Special thanks to @BobyMCbobs for reporting this issue and testing the fix!It also patches CVE-2023-45288.
📜 Changes since v1.14.4
preferredChain
is configured: see 1.14 release notes for more information.Changes
Bug or Regression
v1.14.4
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
cert-manager 1.14 brings a variety of features, security improvements and bug fixes, including: support for creating X.509 certificates with "Other Name" fields, and support for creating CA certificates with "Name Constraints" and "Authority Information Accessors" extensions.
ℹ️ Documentation
Release notes
Upgrade notes
Installation instructions
🔧 Breaking changes
See Breaking changes in v1.14.0 release notes
📜 Changes since v1.14.3
Bug or Regression
cert-manager.io/allow-direct-injection
in annotations (#6809, @jetstack-bot)Other (Cleanup or Flake)
v1.14.3
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
cert-manager 1.14 brings a variety of features, security improvements and bug fixes, including: support for creating X.509 certificates with "Other Name" fields, and support for creating CA certificates with "Name Constraints" and "Authority Information Accessors" extensions.
ℹ️ Documentation
Release notes
Upgrade notes
Installation instructions
🔧 Breaking changes
See Breaking changes in v1.14.0 release notes
📜 Changes since v1.14.2
Bug or Regression
v1.14.2
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
cert-manager 1.14 brings a variety of features, security improvements and bug fixes, including: support for creating X.509 certificates with "Other Name" fields, and support for creating CA certificates with "Name Constraints" and "Authority Information Accessors" extensions.
preferredChain
is configured: see release docs for more info and mitigationsℹ️ Documentation
Release notes
Upgrade notes
Installation instructions
🔧 Breaking changes
See
Breaking changes
in v1.14.0 release notes📜 Changes since
v1.14.1
Bug or Regression
Other (Cleanup or Flake)
v1.14.1
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
cert-manager 1.14 brings a variety of features, security improvements and bug fixes, including: support for creating X.509 certificates with "Other Name" fields, and support for creating CA certificates with "Name Constraints" and "Authority Information Accessors" extensions.
v1.14.2
)preferredChain
is configured: see release docs for more info and mitigationsCA
andSelfSigned
issuers issue certificates with SANs set to non-critical even when the subject is empty. It incorrectly copies the critical field from the CSR.🔧 Breaking changes
See
Breaking changes
in v1.14.0 release notesℹ️ Documentation
📜 Changes since
v1.14.0
Bug or Regression
cmctl experimental install
to panic. (#6706, @inteon)v1.14.0
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
cert-manager 1.14 brings a variety of features, security improvements and bug fixes, including: support for creating X.509 certificates with "Other Name" fields, and support for creating CA certificates with "Name Constraints" and "Authority Information Accessors" extensions.
v1.14.2
)preferredChain
is configured: see release docs for more info and mitigationsCA
andSelfSigned
issuers issue certificates with SANs set to non-critical even when the subject is empty. It incorrectly copies the critical field from the CSR.v1.14.0
, the Helm chart for this version was found to use the wrong OCI image for thecainjector
Deployment,which caused the Helm installation to fail.
In order to complete the release, the cert-manager team have manually updated the Helm chart for this version,
which contains all the Helm chart fixes which are in
v1.14.1
.startupapicheck
image in namespaces other than cert-manager.cmctl experimental install
to panic.🔧 Breaking Changes
The startupapicheck job uses a new OCI image called "startupapicheck", instead of the ctl image.
If you run in an environment in which images cannot be pulled, be sure to include the new image.
The KeyUsage and BasicConstraints extensions will now be encoded as critical in the CertificateRequest's CSR blob.
🗺️ Major Themes
New X.509 Features
The cert-manager Certificate resource now allows you to configure a subset of "Other Name" SANs,
which are described in the Subject Alternative Name section of RFC 5280 (on page 37).
We specifically support any
otherName
type with aUTF-8
value, such as the User Principal Name orsAMAccountName
.These are useful when issuing unique certificates for authenticating with LDAP systems such as Microsoft Active Directory.
For example you can create certificates with this block in the spec:
The feature is still in alpha stage and requires you to enable the
OtherName
feature flag in the controller and webhook components.New CA certificate Features
You can now specify the X.509 v3 Authority Information Accessors extension,
with URLs for certificates issued by the CA issuer.
Users can now use name constraints in CA certificates.
To know more details on name constraints check out RFC section https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.10
Security
An ongoing security audit of the cert-manager code revealed some weaknesses which we have addressed in this release,
such as using more secure default settings in the HTTP servers that serve metrics, healthz and pprof endpoints.
This will help mitigate denial-of-service attacks against those important services.
All the cert-manager containers are now configured with read only root file system by default,
to prevent unexpected changes to the file system of the OCI image.
And it is now possible to configure the metrics server to use HTTPS rather than HTTP,
so that clients can verify the identity of the metrics server.
Other
The liveness probe of the cert-manager controller Pod is now enabled by default.
There is a new option
.spec.keystores.pkcs12.algorithms
to specify encryption and MAC algorithms for PKCS.🤝 Community
Thanks again to all open-source contributors with commits in this release, including:
Thanks also to the following cert-manager maintainers for their contributions during this release:
Equally thanks to everyone who provided feedback, helped users and raised issues on GitHub and Slack and joined our meetings!
Thanks also to the CNCF, which provides resources and support, and to the AWS open source team for being good community members and for their maintenance of the PrivateCA Issuer.
In addition, massive thanks to Venafi for contributing developer time and resources towards the continued maintenance of cert-manager projects.
📜 Changes
Feature
"cluster-autoscaler.kubernetes.io/safe-to-evict": "true"
. You can provide an annotation of"cluster-autoscaler.kubernetes.io/safe-to-evict": "false"
in yourpodTemplate
if you don't like this. (#6349, @jsoref)Also, the controller's liveness probe is now enabled by default. (#6328, @inteon)
otherName
SANS in Certificates (#6404, @SpectralHiss)readOnlyRootFilesystem
by default. (#6453, @wallrj).spec.keystores.pkcs12.algorithms
to specify encryption and MAC algorithms for PKCS#12 keystores. Fixes issues #5957 and #6523. (#6548, @snorwin)readOnlyRootFilesystem: true
(#6462, @wallrj)revisionHistoryLimit
(#6248, @tberreis)spec.namespaceSelector
for webhooks (#6638, @jkroepke)Bug or Regression
.Values.config
is set. (#6357, @ABWassim)GHSA-vgf6-pvf4-34rq
: The webhook server now returns HTTP error 413 (Content Too Large) for requests with body size>= 3MiB
. This is to mitigate DoS attacks that attempt to crash the webhook process by sending large requests that exceed the available memory.The webhook server now returns HTTP error 400 (Bad Request) if the request contains an empty body.
The webhook server now returns HTTP error 500 (Internal Server Error) rather than crashing, if the code panics while handling a request. (#6498, @inteon)
BadConfig
warnings anymore (#6347, @lauraseidler)ReadHeaderTimeout
in allhttp.Server
instances (#6534, @wallrj)WebSDK CertRequest Module Requested Certificate
orThis certificate cannot be processed while it is in an error state. Fix any errors, and then click Retry.
. (#6398, @maelvls).Values.webhook.config
is set. (#6360, @ABWassim)otherName
SAN changes in Certificate resources trigger re-issuance. (#6620, @SpectralHiss)startupapicheck
image toquay.io
(#6609, @wallrj)Other (Cleanup or Flake)
1.21.3
to addressCVE-2023-39325
. Also bumps base images. (#6410, @SgtCoDFish)golang.org/x/net v0.15.0 => v0.17.0
as part of addressingCVE-2023-44487
/CVE-2023-39325
(#6427, @SgtCoDFish)crypto/md5
, a weak cryptographic primitive; usinggolangci-lint
/gosec
(G501). (#6581, @wallrj)crypto/sha1
, a weak cryptographic primitive; usinggolangci-lint
/gosec
(G505). (#6579, @wallrj)math/rand
instead ofcrypto/rand
); usinggolangci-lint
/gosec
(G404). (#6582, @wallrj)pkg/util.RandStringRunes
andpkg/controller/test.RandStringBytes
. Usek8s.io/apimachinery/pkg/util/rand.String
instead. (#6585, @wallrj)subject.serialNumber
while using a literal certificate subject. This was a mistake and has been fixed. (#6533, @inteon)github.com/emicklei/go-restful/v3
tov3.11.0
becausev3.10.2
is labeled as "DO NOT USE". (#6366, @inteon)sets.Set
type in place of the deprecatedsets.String
. (#6586, @wallrj)v1.21.6
(#6628, @SgtCoDFish)autorest
dependency (#5452, @phillebaba)v1.13.6
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
v1.13.6
fixes a bug in the DigitalOcean DNS-01 provider which could cause incorrect DNS records to be deleted when using a domain with a CNAME. Special thanks to @BobyMCbobs for reporting this issue and testing the fix!It also patches CVE-2023-45288.
Known Issues
preferredChain
is configured: see 1.14 release notes for more information.Changes
Bug or Regression
v1.13.5
Compare Source
cert-manager is the easiest way to automatically manage certificates in Kubernetes and OpenShift clusters.
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.