mirror of
https://github.com/wahyd4/cert-manager.git
synced 2026-08-09 05:06:38 +10:00
remove helm-specific labels & add version label
Signed-off-by: Inteon <42113979+inteon@users.noreply.github.com>
This commit is contained in:
@@ -23,13 +23,6 @@ We truncate at 63 chars because some Kubernetes name fields are limited to this
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "cert-manager.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
@@ -68,13 +61,6 @@ If release name contains chart name it will be used as a full name.
|
||||
{{ .Release.Namespace}}/{{ template "webhook.fullname" . }}-ca
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "webhook.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
@@ -109,13 +95,6 @@ If release name contains chart name it will be used as a full name.
|
||||
{{- printf "%s-cainjector" $trimmedName | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "cainjector.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
@@ -126,3 +105,21 @@ Create the name of the service account to use
|
||||
{{ default "default" .Values.cainjector.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "chartName" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Labels that should be added on each resource
|
||||
*/}}
|
||||
{{- define "labels" -}}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- if eq (default .Values.creator "helm") "helm" }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
helm.sh/chart: {{ include "chartName" . }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
@@ -8,9 +8,8 @@ metadata:
|
||||
app: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cainjector"
|
||||
helm.sh/chart: {{ include "cainjector.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
{{- if .Values.cainjector.deploymentAnnotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.cainjector.deploymentAnnotations | indent 4 }}
|
||||
@@ -32,9 +31,8 @@ spec:
|
||||
app: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cainjector"
|
||||
helm.sh/chart: {{ include "cainjector.chart" . }}
|
||||
{{- include "labels" . | nindent 8 }}
|
||||
{{- if .Values.cainjector.podLabels }}
|
||||
{{ toYaml .Values.cainjector.podLabels | indent 8 }}
|
||||
{{- end }}
|
||||
|
||||
@@ -8,9 +8,8 @@ metadata:
|
||||
app: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cainjector"
|
||||
helm.sh/chart: {{ include "cainjector.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: ['policy']
|
||||
resources: ['podsecuritypolicies']
|
||||
|
||||
@@ -8,9 +8,8 @@ metadata:
|
||||
app: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cainjector"
|
||||
helm.sh/chart: {{ include "cainjector.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
|
||||
@@ -8,9 +8,8 @@ metadata:
|
||||
app: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cainjector"
|
||||
helm.sh/chart: {{ include "cainjector.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
annotations:
|
||||
seccomp.security.alpha.kubernetes.io/allowedProfileNames: 'docker/default'
|
||||
seccomp.security.alpha.kubernetes.io/defaultProfileName: 'docker/default'
|
||||
|
||||
@@ -8,9 +8,8 @@ metadata:
|
||||
app: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cainjector"
|
||||
helm.sh/chart: {{ include "cainjector.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: ["cert-manager.io"]
|
||||
resources: ["certificates"]
|
||||
@@ -42,9 +41,8 @@ metadata:
|
||||
app: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cainjector"
|
||||
helm.sh/chart: {{ include "cainjector.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
@@ -65,9 +63,8 @@ metadata:
|
||||
app: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cainjector"
|
||||
helm.sh/chart: {{ include "cainjector.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
# Used for leader election by the controller
|
||||
# cert-manager-cainjector-leader-election is used by the CertificateBased injector controller
|
||||
@@ -103,9 +100,8 @@ metadata:
|
||||
app: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cainjector"
|
||||
helm.sh/chart: {{ include "cainjector.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
@@ -114,7 +110,5 @@ subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ template "cainjector.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
|
||||
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
@@ -14,9 +14,8 @@ metadata:
|
||||
app: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cainjector.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cainjector"
|
||||
helm.sh/chart: {{ include "cainjector.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
{{- if .Values.global.imagePullSecrets }}
|
||||
imagePullSecrets: {{ toYaml .Values.global.imagePullSecrets | nindent 2 }}
|
||||
{{- end }}
|
||||
|
||||
@@ -7,9 +7,8 @@ metadata:
|
||||
app: {{ template "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ template "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ template "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
{{- if .Values.deploymentAnnotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.deploymentAnnotations | indent 4 }}
|
||||
@@ -32,8 +31,7 @@ spec:
|
||||
app.kubernetes.io/name: {{ template "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
helm.sh/chart: {{ template "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 8 }}
|
||||
{{- if .Values.podLabels }}
|
||||
{{ toYaml .Values.podLabels | indent 8 }}
|
||||
{{- end }}
|
||||
|
||||
@@ -7,9 +7,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: ['policy']
|
||||
resources: ['podsecuritypolicies']
|
||||
|
||||
@@ -7,9 +7,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
|
||||
@@ -7,9 +7,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
annotations:
|
||||
seccomp.security.alpha.kubernetes.io/allowedProfileNames: 'docker/default'
|
||||
seccomp.security.alpha.kubernetes.io/defaultProfileName: 'docker/default'
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
{{- if .Values.global.rbac.create -}}
|
||||
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
@@ -9,9 +8,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
# Used for leader election by the controller
|
||||
# See also: https://github.com/kubernetes-sigs/controller-runtime/pull/1144#discussion_r480173688
|
||||
@@ -43,9 +41,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
@@ -67,9 +64,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: ["cert-manager.io"]
|
||||
resources: ["issuers", "issuers/status"]
|
||||
@@ -95,9 +91,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: ["cert-manager.io"]
|
||||
resources: ["clusterissuers", "clusterissuers/status"]
|
||||
@@ -123,9 +118,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: ["cert-manager.io"]
|
||||
resources: ["certificates", "certificates/status", "certificaterequests", "certificaterequests/status"]
|
||||
@@ -160,9 +154,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: ["acme.cert-manager.io"]
|
||||
resources: ["orders", "orders/status"]
|
||||
@@ -200,9 +193,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
# Use to update challenge resource status
|
||||
- apiGroups: ["acme.cert-manager.io"]
|
||||
@@ -259,9 +251,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: ["cert-manager.io"]
|
||||
resources: ["certificates", "certificaterequests"]
|
||||
@@ -292,9 +283,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
@@ -314,9 +304,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
@@ -336,9 +325,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
@@ -358,9 +346,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
@@ -380,9 +367,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
@@ -402,9 +388,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
@@ -424,9 +409,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rbac.authorization.k8s.io/aggregate-to-view: "true"
|
||||
rbac.authorization.k8s.io/aggregate-to-edit: "true"
|
||||
rbac.authorization.k8s.io/aggregate-to-admin: "true"
|
||||
@@ -449,9 +433,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rbac.authorization.k8s.io/aggregate-to-edit: "true"
|
||||
rbac.authorization.k8s.io/aggregate-to-admin: "true"
|
||||
rules:
|
||||
@@ -473,9 +456,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cert-manager"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: ["cert-manager.io"]
|
||||
resources: ["signers"]
|
||||
@@ -492,9 +474,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cert-manager"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
@@ -517,9 +498,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cert-manager"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: ["certificates.k8s.io"]
|
||||
resources: ["certificatesigningrequests"]
|
||||
@@ -545,9 +525,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "cert-manager"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
@@ -556,5 +535,4 @@ subjects:
|
||||
- name: {{ template "cert-manager.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
kind: ServiceAccount
|
||||
|
||||
{{- end }}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{{- if .Values.prometheus.enabled }}
|
||||
{{- if .Values.prometheus.enabled -}}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
@@ -8,9 +8,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
{{- if .Values.serviceLabels }}
|
||||
{{ toYaml .Values.serviceLabels | indent 4 }}
|
||||
{{- end }}
|
||||
|
||||
@@ -16,7 +16,6 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
{{- end }}
|
||||
|
||||
@@ -12,9 +12,8 @@ metadata:
|
||||
app: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/name: {{ include "cert-manager.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "controller"
|
||||
helm.sh/chart: {{ include "cert-manager.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
prometheus: {{ .Values.prometheus.servicemonitor.prometheusInstance }}
|
||||
{{- if .Values.prometheus.servicemonitor.labels }}
|
||||
{{ toYaml .Values.prometheus.servicemonitor.labels | indent 4}}
|
||||
|
||||
@@ -7,9 +7,8 @@ metadata:
|
||||
app: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/name: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "webhook"
|
||||
helm.sh/chart: {{ include "webhook.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
{{- if .Values.webhook.deploymentAnnotations }}
|
||||
annotations:
|
||||
{{ toYaml .Values.webhook.deploymentAnnotations | indent 4 }}
|
||||
@@ -31,9 +30,8 @@ spec:
|
||||
app: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/name: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "webhook"
|
||||
helm.sh/chart: {{ include "webhook.chart" . }}
|
||||
{{- include "labels" . | nindent 8 }}
|
||||
{{- if .Values.webhook.podLabels }}
|
||||
{{ toYaml .Values.webhook.podLabels | indent 8 }}
|
||||
{{- end }}
|
||||
|
||||
@@ -6,9 +6,8 @@ metadata:
|
||||
app: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/name: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "webhook"
|
||||
helm.sh/chart: {{ include "webhook.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from-secret: "{{ .Release.Namespace }}/{{ template "webhook.fullname" . }}-ca"
|
||||
{{- if .Values.webhook.mutatingWebhookConfigurationAnnotations }}
|
||||
|
||||
@@ -7,9 +7,8 @@ metadata:
|
||||
app: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/name: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "webhook"
|
||||
helm.sh/chart: {{ include "webhook.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: ['policy']
|
||||
resources: ['podsecuritypolicies']
|
||||
|
||||
@@ -7,9 +7,8 @@ metadata:
|
||||
app: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/name: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "webhook"
|
||||
helm.sh/chart: {{ include "webhook.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
|
||||
@@ -7,9 +7,8 @@ metadata:
|
||||
app: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/name: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "webhook"
|
||||
helm.sh/chart: {{ include "webhook.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
annotations:
|
||||
seccomp.security.alpha.kubernetes.io/allowedProfileNames: 'docker/default'
|
||||
seccomp.security.alpha.kubernetes.io/defaultProfileName: 'docker/default'
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
{{- if .Values.global.rbac.create -}}
|
||||
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
@@ -9,9 +8,8 @@ metadata:
|
||||
app: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/name: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "webhook"
|
||||
helm.sh/chart: {{ include "webhook.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: [""]
|
||||
resources: ["secrets"]
|
||||
@@ -33,9 +31,8 @@ metadata:
|
||||
app: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/name: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "webhook"
|
||||
helm.sh/chart: {{ include "webhook.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
@@ -56,9 +53,8 @@ metadata:
|
||||
app: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/name: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "webhook"
|
||||
helm.sh/chart: {{ include "webhook.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
rules:
|
||||
- apiGroups: ["authorization.k8s.io"]
|
||||
resources: ["subjectaccessreviews"]
|
||||
@@ -73,9 +69,8 @@ metadata:
|
||||
app: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/name: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "webhook"
|
||||
helm.sh/chart: {{ include "webhook.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
@@ -85,5 +80,4 @@ subjects:
|
||||
kind: ServiceAccount
|
||||
name: {{ template "webhook.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
|
||||
{{- end -}}
|
||||
|
||||
@@ -7,9 +7,8 @@ metadata:
|
||||
app: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/name: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "webhook"
|
||||
helm.sh/chart: {{ include "webhook.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
spec:
|
||||
type: {{ .Values.webhook.serviceType }}
|
||||
{{- if .Values.webhook.loadBalancerIP }}
|
||||
|
||||
@@ -13,9 +13,8 @@ metadata:
|
||||
app: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/name: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "webhook"
|
||||
helm.sh/chart: {{ include "webhook.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
{{- if .Values.global.imagePullSecrets }}
|
||||
imagePullSecrets: {{ toYaml .Values.global.imagePullSecrets | nindent 2 }}
|
||||
{{- end -}}
|
||||
|
||||
@@ -6,9 +6,8 @@ metadata:
|
||||
app: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/name: {{ include "webhook.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
app.kubernetes.io/component: "webhook"
|
||||
helm.sh/chart: {{ include "webhook.chart" . }}
|
||||
{{- include "labels" . | nindent 4 }}
|
||||
annotations:
|
||||
cert-manager.io/inject-ca-from-secret: "{{ .Release.Namespace }}/{{ template "webhook.fullname" . }}-ca"
|
||||
{{- if .Values.webhook.validatingWebhookConfigurationAnnotations }}
|
||||
|
||||
@@ -46,6 +46,9 @@ helm_tmpl(
|
||||
helm_pkg = ":package",
|
||||
release_name = "cert-manager",
|
||||
release_namespace = "cert-manager",
|
||||
values = {
|
||||
"creator": "static",
|
||||
},
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
||||
@@ -67,6 +70,9 @@ helm_tmpl(
|
||||
helm_pkg = ":crd-%s.package" % crd,
|
||||
release_name = "cert-manager",
|
||||
release_namespace = "cert-manager",
|
||||
values = {
|
||||
"creator": "static",
|
||||
},
|
||||
visibility = ["//visibility:public"],
|
||||
) for crd in crds]
|
||||
|
||||
|
||||
@@ -8,8 +8,7 @@ metadata:
|
||||
app: '{{ template "cert-manager.name" . }}'
|
||||
app.kubernetes.io/name: '{{ template "cert-manager.name" . }}'
|
||||
app.kubernetes.io/instance: '{{ .Release.Name }}'
|
||||
app.kubernetes.io/managed-by: '{{ .Release.Service }}'
|
||||
helm.sh/chart: '{{ template "cert-manager.chart" . }}'
|
||||
# {{- include "labels" . | nindent 4 }}
|
||||
spec:
|
||||
group: cert-manager.io
|
||||
names:
|
||||
|
||||
@@ -8,8 +8,7 @@ metadata:
|
||||
app: '{{ template "cert-manager.name" . }}'
|
||||
app.kubernetes.io/name: '{{ template "cert-manager.name" . }}'
|
||||
app.kubernetes.io/instance: '{{ .Release.Name }}'
|
||||
app.kubernetes.io/managed-by: '{{ .Release.Service }}'
|
||||
helm.sh/chart: '{{ template "cert-manager.chart" . }}'
|
||||
# {{- include "labels" . | nindent 4 }}
|
||||
spec:
|
||||
group: cert-manager.io
|
||||
names:
|
||||
|
||||
@@ -8,8 +8,7 @@ metadata:
|
||||
app: '{{ template "cert-manager.name" . }}'
|
||||
app.kubernetes.io/name: '{{ template "cert-manager.name" . }}'
|
||||
app.kubernetes.io/instance: '{{ .Release.Name }}'
|
||||
app.kubernetes.io/managed-by: '{{ .Release.Service }}'
|
||||
helm.sh/chart: '{{ template "cert-manager.chart" . }}'
|
||||
# {{- include "labels" . | nindent 4 }}
|
||||
spec:
|
||||
group: acme.cert-manager.io
|
||||
names:
|
||||
|
||||
@@ -8,8 +8,7 @@ metadata:
|
||||
app: '{{ template "cert-manager.name" . }}'
|
||||
app.kubernetes.io/name: '{{ template "cert-manager.name" . }}'
|
||||
app.kubernetes.io/instance: '{{ .Release.Name }}'
|
||||
app.kubernetes.io/managed-by: '{{ .Release.Service }}'
|
||||
helm.sh/chart: '{{ template "cert-manager.chart" . }}'
|
||||
# {{- include "labels" . | nindent 4 }}
|
||||
spec:
|
||||
group: cert-manager.io
|
||||
names:
|
||||
|
||||
@@ -8,8 +8,7 @@ metadata:
|
||||
app: '{{ template "cert-manager.name" . }}'
|
||||
app.kubernetes.io/name: '{{ template "cert-manager.name" . }}'
|
||||
app.kubernetes.io/instance: '{{ .Release.Name }}'
|
||||
app.kubernetes.io/managed-by: '{{ .Release.Service }}'
|
||||
helm.sh/chart: '{{ template "cert-manager.chart" . }}'
|
||||
# {{- include "labels" . | nindent 4 }}
|
||||
spec:
|
||||
group: cert-manager.io
|
||||
names:
|
||||
|
||||
@@ -8,8 +8,7 @@ metadata:
|
||||
app: '{{ template "cert-manager.name" . }}'
|
||||
app.kubernetes.io/name: '{{ template "cert-manager.name" . }}'
|
||||
app.kubernetes.io/instance: '{{ .Release.Name }}'
|
||||
app.kubernetes.io/managed-by: '{{ .Release.Service }}'
|
||||
helm.sh/chart: '{{ template "cert-manager.chart" . }}'
|
||||
# {{- include "labels" . | nindent 4 }}
|
||||
spec:
|
||||
group: acme.cert-manager.io
|
||||
names:
|
||||
|
||||
@@ -10,35 +10,19 @@ RELEASE_NAME = "cert-manager"
|
||||
|
||||
RELEASE_NAMESPACE = "cert-manager"
|
||||
|
||||
# This genrule removes helm annotations.
|
||||
genrule(
|
||||
name = "crds.nohelm.yaml",
|
||||
srcs = [
|
||||
"//deploy/crds",
|
||||
],
|
||||
outs = ["crds.nohelm.out"],
|
||||
cmd = " ".join([
|
||||
"$(location //hack/filter-crd)",
|
||||
"-variant=no-helm",
|
||||
"$(location //deploy/crds:crds)",
|
||||
"> $@",
|
||||
]),
|
||||
tools = [
|
||||
"//hack/filter-crd",
|
||||
],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
||||
helm_tmpl(
|
||||
name = "manifests.helm",
|
||||
helm_pkg = "//deploy/charts/cert-manager",
|
||||
release_name = RELEASE_NAME,
|
||||
release_namespace = RELEASE_NAMESPACE,
|
||||
values = {
|
||||
"creator": "static",
|
||||
},
|
||||
)
|
||||
|
||||
licensed_file(
|
||||
name = "cert-manager.crds.yaml",
|
||||
src = ":crds.nohelm.yaml",
|
||||
src = "//deploy/crds",
|
||||
)
|
||||
|
||||
genrule(
|
||||
@@ -58,28 +42,9 @@ genrule(
|
||||
]),
|
||||
)
|
||||
|
||||
# This genrule removes helm annotations.
|
||||
genrule(
|
||||
name = "unlicensed.nohelm",
|
||||
srcs = [
|
||||
":unlicensed",
|
||||
],
|
||||
outs = ["unlicensed.nohelm.yaml"],
|
||||
cmd = " ".join([
|
||||
"$(location //hack/filter-crd)",
|
||||
"-variant=no-helm",
|
||||
"$(location :unlicensed)",
|
||||
"> $@",
|
||||
]),
|
||||
tools = [
|
||||
"//hack/filter-crd",
|
||||
],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
||||
licensed_file(
|
||||
name = "cert-manager.yaml",
|
||||
src = "unlicensed.nohelm",
|
||||
src = ":unlicensed",
|
||||
)
|
||||
|
||||
pkg_tar(
|
||||
|
||||
@@ -45,7 +45,6 @@ require (
|
||||
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c
|
||||
gomodules.xyz/jsonpatch/v2 v2.2.0
|
||||
google.golang.org/api v0.20.0
|
||||
gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b
|
||||
helm.sh/helm/v3 v3.6.2
|
||||
k8s.io/api v0.21.2
|
||||
k8s.io/apiextensions-apiserver v0.21.2
|
||||
|
||||
@@ -275,7 +275,6 @@ filegroup(
|
||||
"//hack/bin:all-srcs",
|
||||
"//hack/boilerplate:all-srcs",
|
||||
"//hack/build:all-srcs",
|
||||
"//hack/filter-crd:all-srcs",
|
||||
],
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:public"],
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library")
|
||||
|
||||
go_library(
|
||||
name = "go_default_library",
|
||||
srcs = ["main.go"],
|
||||
importpath = "github.com/jetstack/cert-manager/hack/filter-crd",
|
||||
visibility = ["//visibility:private"],
|
||||
deps = ["@in_gopkg_yaml_v3//:go_default_library"],
|
||||
)
|
||||
|
||||
go_binary(
|
||||
name = "filter-crd",
|
||||
embed = [":go_default_library"],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "package-srcs",
|
||||
srcs = glob(["**"]),
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:private"],
|
||||
)
|
||||
|
||||
filegroup(
|
||||
name = "all-srcs",
|
||||
srcs = [":package-srcs"],
|
||||
tags = ["automanaged"],
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
@@ -1,139 +0,0 @@
|
||||
/*
|
||||
Copyright 2020 The cert-manager Authors.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
|
||||
package main
|
||||
|
||||
import (
|
||||
"flag"
|
||||
"fmt"
|
||||
"log"
|
||||
"os"
|
||||
"strings"
|
||||
|
||||
"gopkg.in/yaml.v3"
|
||||
)
|
||||
|
||||
var removeKeys = []string{}
|
||||
|
||||
// This code generates regular cert-manager deployment manifest from
|
||||
// one created for Helm by removing Helm-specific annotations.
|
||||
func main() {
|
||||
loadVariant()
|
||||
|
||||
if len(flag.Args()) < 1 {
|
||||
log.Fatal("Usage: filter-crd <CRD YAML file>")
|
||||
}
|
||||
|
||||
f, err := os.Open(flag.Args()[0])
|
||||
if err != nil {
|
||||
log.Fatal("Error opening file: ", err)
|
||||
}
|
||||
|
||||
decoder := yaml.NewDecoder(f)
|
||||
var d map[interface{}]interface{}
|
||||
output := []string{}
|
||||
|
||||
for decoder.Decode(&d) == nil {
|
||||
|
||||
if len(d) == 0 {
|
||||
continue
|
||||
}
|
||||
|
||||
checkChain(d, []string{})
|
||||
|
||||
fileOut, err := yaml.Marshal(d)
|
||||
if err != nil {
|
||||
log.Fatal("Error marshaling output: ", err)
|
||||
}
|
||||
|
||||
output = append(output, string(fileOut))
|
||||
d = map[interface{}]interface{}{} // clean out the old, otherwise the decoder will merge keys
|
||||
}
|
||||
|
||||
fmt.Println(strings.Join(output, "---\n"))
|
||||
}
|
||||
|
||||
func checkChain(d map[interface{}]interface{}, chain []string) {
|
||||
for k, v := range d {
|
||||
if key, ok := k.(string); ok {
|
||||
chain = append(chain, key)
|
||||
|
||||
// check if keys need to be removed
|
||||
for _, removeKey := range removeKeys {
|
||||
if strings.Join(chain, "/") == removeKey {
|
||||
delete(d, key)
|
||||
}
|
||||
}
|
||||
|
||||
if value, ok := v.(map[interface{}]interface{}); ok {
|
||||
checkChain(value, chain)
|
||||
}
|
||||
if value, ok := v.([]interface{}); ok {
|
||||
d[k] = checkSliceChain(value, append(chain, "[]"))
|
||||
}
|
||||
chain = chain[:len(chain)-1] // we're done with this key, remove it from the chain
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func checkSliceChain(s []interface{}, chain []string) []interface{} {
|
||||
for _, sliceVal := range s {
|
||||
if d, ok := sliceVal.(map[interface{}]interface{}); ok {
|
||||
for k, v := range d {
|
||||
if key, ok := k.(string); ok {
|
||||
chain = append(chain, key)
|
||||
|
||||
// check if keys need to be removed
|
||||
for _, removeKey := range removeKeys {
|
||||
if strings.Join(chain, "/") == removeKey {
|
||||
delete(d, key)
|
||||
}
|
||||
}
|
||||
|
||||
if value, ok := v.(map[interface{}]interface{}); ok {
|
||||
checkChain(value, chain)
|
||||
}
|
||||
if value, ok := v.([]interface{}); ok {
|
||||
d[k] = checkSliceChain(value, append(chain, "[]"))
|
||||
}
|
||||
|
||||
chain = chain[:len(chain)-1] // we're done with this key, remove it from the chain
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return s
|
||||
}
|
||||
|
||||
func loadVariant() {
|
||||
variant := ""
|
||||
flag.StringVar(&variant, "variant", "", "variant of remove rules")
|
||||
flag.Parse()
|
||||
|
||||
// filter-crd is also able to be used without variant which should produce the same output again
|
||||
// this section used to have multiple variants for legacy releases, this has been removed now
|
||||
// TODO: ultimately we should find a we should find a way to remove the Helm specific labels
|
||||
// without using this hack
|
||||
if variant == "no-helm" {
|
||||
removeKeys = []string{
|
||||
"metadata/labels/app.kubernetes.io/managed-by",
|
||||
"metadata/labels/helm.sh/chart",
|
||||
"spec/template/metadata/labels/app.kubernetes.io/managed-by",
|
||||
"spec/template/metadata/labels/helm.sh/chart",
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user