a7079cd9ff2d21dc09d0b1e520406d04cf2856f7
[ric-plt/ric-dep.git] / helm / infrastructure / subcharts / kong / templates / certificate.yaml
1 {{- if and ( .Capabilities.APIVersions.Has "cert-manager.io/v1" ) .Values.certificates.enabled -}}
2
3 {{- $genericCertificateConfig := dict -}}
4 {{- $_ := set $genericCertificateConfig "fullName" (include "kong.fullname" .) -}}
5 {{- $_ := set $genericCertificateConfig "namespace" (include "kong.namespace" .) -}}
6 {{- $_ := set $genericCertificateConfig "metaLabels" (include "kong.metaLabels" .) -}}
7 {{- $_ := set $genericCertificateConfig "globalIssuer" .Values.certificates.issuer -}}
8 {{- $_ := set $genericCertificateConfig "globalClusterIssuer" .Values.certificates.clusterIssuer -}}
9 {{- $_ := set $genericCertificateConfig "globalSubject" .Values.certificates.subject -}}
10 {{- $_ := set $genericCertificateConfig "globalPrivateKey" .Values.certificates.privateKey -}}
11 {{- $_ := set $genericCertificateConfig "defaultIssuer" (printf "%s-%s-%s" .Release.Name .Chart.Name "selfsigned-issuer") -}}
12
13 {{- if .Values.certificates.admin.enabled }}
14 {{- $certificateConfig := mustMerge (mustDeepCopy $genericCertificateConfig) .Values.certificates.admin -}}
15 {{- $_ := set $certificateConfig "serviceName" "admin" -}}
16 {{- include "kong.certificate" $certificateConfig -}}
17 {{- end }}
18
19 {{- if (and .Values.certificates.portal.enabled .Values.enterprise.enabled) }}
20 {{- $certificateConfig := mustMerge (mustDeepCopy $genericCertificateConfig) .Values.certificates.portal -}}
21 {{- $_ := set $certificateConfig "serviceName" "portal" -}}
22 {{- include "kong.certificate" $certificateConfig -}}
23 {{- end }}
24
25 {{- if .Values.certificates.proxy.enabled }}
26 {{- $certificateConfig := mustMerge (mustDeepCopy $genericCertificateConfig) .Values.certificates.proxy -}}
27 {{- $_ := set $certificateConfig "serviceName" "proxy" -}}
28 {{- include "kong.certificate" $certificateConfig -}}
29 {{- end }}
30
31 {{- if .Values.certificates.cluster.enabled }}
32 {{- $certificateConfig := dict -}}
33 {{- $certificateConfig = mustMerge (mustDeepCopy $genericCertificateConfig) .Values.certificates.cluster -}}
34 {{- $_ := set $certificateConfig "serviceName" "cluster" -}}
35 {{- include "kong.certificate" $certificateConfig -}}
36 {{- end }}
37
38 {{- end }}
39
40 {{- define "kong.certificate" }}
41 ---
42 apiVersion: cert-manager.io/v1
43 kind: Certificate
44 metadata:
45   name: {{ .fullName }}-{{ .serviceName }}
46   namespace:  {{ .namespace }}
47   labels:
48     {{- .metaLabels | nindent 4 }}
49 spec:
50   secretName: {{ .fullName }}-{{ .serviceName }}-cert
51   commonName: {{ .commonName }}
52   dnsNames:
53   {{- range (append .dnsNames .commonName) }}
54   - {{ . | quote }}
55   {{- end }}
56   renewBefore: 360h0m0s
57   duration: 2160h0m0s
58   {{ if .subject -}}
59   subject:
60     {{- toYaml .subject | nindent 4 }}
61   {{ else if .globalSubject -}}
62   subject:
63     {{- toYaml .globalSubject | nindent 4 }}
64   {{- end }}
65   {{ if .privateKey -}}
66   privateKey:
67     {{- toYaml .privateKey | nindent 4 }}
68   {{ else if .globalPrivateKey -}}
69   privateKey:
70     {{- toYaml .globalPrivateKey | nindent 4 }}
71   {{- end }}
72   {{ if .clusterIssuer -}}
73   issuerRef:
74     name: {{ .clusterIssuer }}
75     kind: ClusterIssuer
76   {{ else if .issuer -}}
77   issuerRef:
78     name: {{ .issuer }}
79     kind: Issuer
80   {{ else if .globalClusterIssuer -}}
81   issuerRef:
82     name: {{ .globalClusterIssuer}}
83     kind: ClusterIssuer
84   {{ else if .globalIssuer -}}
85   issuerRef:
86     name: {{ .globalIssuer }}
87     kind: Issuer
88   {{- end -}}
89 {{- end }}