|
| 1 | +{{- if .Values.dex.certs.install.create }} |
| 2 | +{{ $caName := .Values.dex.certs.grpcCA }} |
| 3 | +{{ $clientTlsSecretName := .Values.dex.certs.grpcClientTls }} |
| 4 | +{{ $sourceNamespace := .Values.dex.certs.install.sourceNamespace }} |
| 5 | +apiVersion: batch/v1 |
| 6 | +kind: Job |
| 7 | +metadata: |
| 8 | + annotations: |
| 9 | + "helm.sh/hook": pre-install |
| 10 | + "helm.sh/hook-weight": "4" |
| 11 | + "helm.sh/hook-delete-policy": hook-succeeded |
| 12 | + name: job-install-grpc-secrets |
| 13 | + labels: |
| 14 | + draft: {{ default "draft-app" .Values.draft }} |
| 15 | + chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}" |
| 16 | +spec: |
| 17 | + activeDeadlineSeconds: {{ .Values.dex.certs.install.activeDeadlineSeconds }} |
| 18 | + template: |
| 19 | + metadata: |
| 20 | + labels: |
| 21 | + release: "{{ .Release.Name }}" |
| 22 | + component: "job" |
| 23 | + spec: |
| 24 | + serviceAccountName: {{ template "fullname" . }}-install-certs |
| 25 | + restartPolicy: OnFailure |
| 26 | + containers: |
| 27 | + - name: main |
| 28 | + image: "{{ .Values.dex.certs.install.image }}:{{ .Values.dex.certs.install.imageTag }}" |
| 29 | + imagePullPolicy: {{ .Values.dex.certs.install.imagePullPolicy }} |
| 30 | + command: |
| 31 | + - /bin/bash |
| 32 | + - -exc |
| 33 | + - | |
| 34 | + # Cleanup the existing config map and secrets |
| 35 | + kubectl delete configmap {{ $caName }} --namespace {{ .Release.Namespace }} || true |
| 36 | + kubectl delete secret {{ $clientTlsSecretName }} --namespace {{ .Release.Namespace }} || true |
| 37 | +
|
| 38 | + # Copy the secrts from source namespace |
| 39 | + kubectl get secret {{ $clientTlsSecretName }} --namespace={{ $sourceNamespace }} --export -o yaml |\ |
| 40 | + kubectl apply --namespace={{ .Release.Namespace }} -f - |
| 41 | + kubectl get cm {{ $caName }} --namespace={{ $sourceNamespace }} --export -o yaml |\ |
| 42 | + kubectl apply --namespace={{ .Release.Namespace }} -f - |
| 43 | +{{- end }} |
0 commit comments