_certContainer.tpl 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. {{- define "jenkins.certContainer" -}}
  2. enabled: true
  3. type: init
  4. imageSelector: image
  5. securityContext:
  6. runAsUser: 1000
  7. runAsGroup: 1000
  8. command:
  9. - /bin/sh
  10. - -c
  11. args:
  12. - |
  13. {{- $key := printf "%v/%v" .Values.jenkinsConstants.certsPath .Values.jenkinsConstants.keyName -}}
  14. {{- $cert := printf "%v/%v" .Values.jenkinsConstants.certsPath .Values.jenkinsConstants.crtName -}}
  15. {{- $keystore := printf "%v/%v" .Values.jenkinsConstants.keystorePath .Values.jenkinsConstants.keystoreName }}
  16. # Create the directories for the certificates and keystore
  17. mkdir -p "{{ .Values.jenkinsConstants.certsPath }}"
  18. mkdir -p "{{ .Values.jenkinsConstants.keystorePath }}"
  19. if [ -f "/tmp/ix.p12" ]; then
  20. echo "Cleaning up old certificate"
  21. rm "/tmp/ix.p12"
  22. fi
  23. echo "Generating new certificate from key and cert"
  24. if [ -f "{{ $key }}" ] && [ -f "{{ $cert }}" ]; then
  25. echo "Found key and cert, creating p12 certificate"
  26. openssl pkcs12 -inkey "{{ $key }}" -in "{{ $cert }}" \
  27. -export -out "/tmp/ix.p12" \
  28. -password pass:{{ .Values.jenkinsCertRandomPass }} || exit 1
  29. echo "P12 Certificate created"
  30. if [ -f "{{ $keystore }}" ]; then
  31. echo "Keystore already exists, removing and creating a new one"
  32. rm "{{ $keystore }}"
  33. fi
  34. echo "Importing certificate into a new java keystore"
  35. keytool -importkeystore -srckeystore "/tmp/ix.p12" -srcstoretype pkcs12 \
  36. -destkeystore "{{ $keystore }}" -deststoretype JKS \
  37. -srcstorepass {{ .Values.jenkinsCertRandomPass }} \
  38. -deststorepass {{ .Values.jenkinsCertRandomPass }} || exit 1
  39. echo "Certificate imported"
  40. fi
  41. {{- end -}}