1818 ttlSecondsAfterFinished : 604800 # 7 days
1919 template :
2020 metadata :
21- creationTimestamp : null
21+ labels :
22+ DataClass : Low
23+ app.kubernetes.io/name : job-cert-bootstrap
24+ app.kubernetes.io/instance : " {{ include " sdx-edge.fullname" . }}"
25+ data-plane : " {{ include " sdx-edge.fullname" . }}"
2226 spec :
2327 restartPolicy : Never
2428 serviceAccountName : sdx-job-cert-bootstrap
3337 name : cert-bootstrap
3438 command :
3539 - /bin/bash
36- - + x
40+ - - x
3741 - -e
3842 - -c
3943 - |-
@@ -42,33 +46,58 @@ spec:
4246
4347 step certificate create \
4448 --no-password --insecure \
49+ --san ${CN} --san ${IP} \
4550 --csr ${CN} tls.csr tls.key
4651
4752 TOKEN=$(cat /etc/secrets/sdx-edge-bootstrap-token/token)
4853
54+ curl -kLO "${CLIENT_CA_URL}/roots.pem"
55+
4956 step ca sign \
5057 --ca-url $CLIENT_CA_URL \
51- --root /etc/secrets/sdx-edge-ca/ca.crt \
58+ --root ./roots.pem \
5259 --force --token $TOKEN tls.csr tls.crt
5360
5461 curl -sLO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
5562 chmod +x kubectl
5663
64+ kubectl delete secret ${EDGE_NAME}-client || true
65+ kubectl delete secret ${EDGE_NAME}-server || true
66+
5767 kubectl create secret \
5868 --save-config --dry-run=client -o yaml \
5969 tls ${EDGE_NAME}-client \
6070 --cert=./tls.crt \
6171 --key=./tls.key | kubectl apply -f -
6272
73+ kubectl create secret \
74+ --save-config --dry-run=client -o yaml \
75+ tls ${EDGE_NAME}-server \
76+ --cert=./tls.crt \
77+ --key=./tls.key | kubectl apply -f -
78+
79+ {{- if .Values.shared.ca_secret }}
80+
81+ kubectl create secret \
82+ --save-config --dry-run=client -o yaml \
83+ generic sdx-edge-ca \
84+ --from-file=ca.crt=./roots.pem | kubectl apply -f -
85+ {{- end }}
6386 kubectl rollout restart deployment $EDGE_NAME
6487
6588 env :
6689 - name : CN
6790 value : " {{ .Values.tls.client.cn }}"
91+ - name : IP
92+ value : " {{ .Values.tls.server.ip }}"
6893 - name : EDGE_NAME
6994 value : " {{ include " sdx-edge.fullname" . }}"
7095 - name : CLIENT_CA_URL
7196 value : " {{ .Values.client_ca_url }}"
97+ - name : HTTPS_PROXY
98+ value : " {{ .Values.https_proxy }}"
99+ - name : NO_PROXY
100+ value : " .cluster.local,.svc,10.91.0.0/16,10.93.0.0/16,172.30.0.0/16,127.0.0.1,localhost,.gov.bc.ca"
72101 imagePullPolicy : IfNotPresent
73102 volumeMounts :
74103 - name : working-dir
79108 mountPropagation : None
80109 - name : sdx-edge-bootstrap-token
81110 mountPath : /etc/secrets/sdx-edge-bootstrap-token
82- - name : sdx-edge-ca
83- mountPath : /etc/secrets/sdx-edge-ca
84111 image : ' docker.io/smallstep/step-cli:0.23.0'
85112 automountServiceAccountToken : true
86113 volumes :
91118 - name : sdx-edge-bootstrap-token
92119 secret :
93120 secretName : {{ include "sdx-edge.fullname" . }}-bootstrap
94- - name : sdx-edge-ca
95- secret :
96- secretName : sdx-edge-ca
97121 dnsPolicy : ClusterFirst
98122---
99123{{ end }}
@@ -115,6 +139,7 @@ rules:
115139 - verbs :
116140 - get
117141 - create
142+ - delete
118143 - patch
119144 apiGroups :
120145 - ' '
0 commit comments