Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 1 | {{/* |
egernug | 2757833 | 2020-03-26 10:27:55 +0000 | [diff] [blame] | 2 | # Copyright © 2020 Samsung Electronics |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 3 | # Copyright © 2017 Amdocs, Bell Canada |
Remigiusz Janeczek | 42177a1 | 2020-12-10 13:10:15 +0100 | [diff] [blame] | 4 | # Copyright © 2021 Nokia |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 5 | # |
| 6 | # Licensed under the Apache License, Version 2.0 (the "License"); |
| 7 | # you may not use this file except in compliance with the License. |
| 8 | # You may obtain a copy of the License at |
| 9 | # |
| 10 | # http://www.apache.org/licenses/LICENSE-2.0 |
| 11 | # |
| 12 | # Unless required by applicable law or agreed to in writing, software |
| 13 | # distributed under the License is distributed on an "AS IS" BASIS, |
| 14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 15 | # See the License for the specific language governing permissions and |
| 16 | # limitations under the License. |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 17 | */}} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 18 | |
Grzegorz-Lis | 1318a77 | 2020-07-23 15:08:43 +0200 | [diff] [blame] | 19 | apiVersion: apps/v1 |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 20 | kind: StatefulSet |
Alexander Dehn | 9b797d6 | 2020-04-21 09:53:50 +0000 | [diff] [blame] | 21 | metadata: {{- include "common.resourceMetadata" . | nindent 2 }} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 22 | spec: |
Grzegorz-Lis | 1318a77 | 2020-07-23 15:08:43 +0200 | [diff] [blame] | 23 | selector: |
| 24 | matchLabels: |
| 25 | app: {{ include "common.name" . }} |
BorislavG | 1ffbd99 | 2018-04-24 07:56:27 +0000 | [diff] [blame] | 26 | serviceName: {{ include "common.servicename" . }}-cluster |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 27 | replicas: {{ .Values.replicaCount }} |
Alexander Dehn | 9b797d6 | 2020-04-21 09:53:50 +0000 | [diff] [blame] | 28 | selector: {{- include "common.selectors" . | nindent 4 }} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 29 | podManagementPolicy: Parallel |
| 30 | template: |
Alexander Dehn | 9b797d6 | 2020-04-21 09:53:50 +0000 | [diff] [blame] | 31 | metadata: {{- include "common.templateMetadata" . | nindent 6 }} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 32 | spec: |
| 33 | initContainers: |
| 34 | - command: |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 35 | - sh |
| 36 | args: |
| 37 | - -c |
| 38 | - "cd /config-input && for PFILE in `ls -1 .`; do envsubst <${PFILE} >/config/${PFILE}; done" |
| 39 | env: |
| 40 | - name: AAI_CLIENT_NAME |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 41 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "aai-user-creds" "key" "login") | indent 10 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 42 | - name: AAI_CLIENT_PASSWORD |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 43 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "aai-user-creds" "key" "password") | indent 10 }} |
Dan Timoney | 9e310e7 | 2021-02-23 11:25:39 -0500 | [diff] [blame] | 44 | - name: AAI_TRUSTSTORE_PASSWORD |
| 45 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "aai-truststore-password" "key" "password") | indent 10 }} |
| 46 | - name: ANSIBLE_TRUSTSTORE_PASSWORD |
| 47 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "ansible-truststore-password" "key" "password") | indent 10 }} |
| 48 | - name: SO_USER |
| 49 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "so-user-creds" "key" "login") | indent 10 }} |
| 50 | - name: SO_PASSWORD |
| 51 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "so-user-creds" "key" "password") | indent 10 }} |
| 52 | - name: NENG_USER |
| 53 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "neng-user-creds" "key" "login") | indent 10 }} |
| 54 | - name: NENG_PASSWORD |
| 55 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "neng-user-creds" "key" "password") | indent 10 }} |
| 56 | - name: CDS_USER |
| 57 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "cds-user-creds" "key" "login") | indent 10 }} |
| 58 | - name: CDS_PASSWORD |
| 59 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "cds-user-creds" "key" "password") | indent 10 }} |
| 60 | - name: HONEYCOMB_USER |
| 61 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "honeycomb-user-creds" "key" "login") | indent 10 }} |
| 62 | - name: HONEYCOMB_PASSWORD |
| 63 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "honeycomb-user-creds" "key" "password") | indent 10 }} |
| 64 | - name: TRUSTSTORE_PASSWORD |
| 65 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "truststore-password" "key" "password") | indent 10 }} |
| 66 | - name: KEYSTORE_PASSWORD |
| 67 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "keystore-password" "key" "password") | indent 10 }} |
| 68 | - name: DMAAP_USER |
| 69 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "dmaap-user-creds" "key" "login") | indent 10 }} |
| 70 | - name: DMAAP_PASSWORD |
| 71 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "dmaap-user-creds" "key" "password") | indent 10 }} |
| 72 | - name: DMAAP_AUTHKEY |
| 73 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "dmaap-authkey" "key" "password") | indent 10 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 74 | - name: MODELSERVICE_USER |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 75 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "modeling-user-creds" "key" "login") | indent 10 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 76 | - name: MODELSERVICE_PASSWORD |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 77 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "modeling-user-creds" "key" "password") | indent 10 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 78 | - name: RESTCONF_USER |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 79 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "restconf-creds" "key" "login") | indent 10 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 80 | - name: RESTCONF_PASSWORD |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 81 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "restconf-creds" "key" "password") | indent 10 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 82 | - name: ANSIBLE_USER |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 83 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "ansible-creds" "key" "login") | indent 10 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 84 | - name: ANSIBLE_PASSWORD |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 85 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "ansible-creds" "key" "password") | indent 10 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 86 | - name: SCALEOUT_USER |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 87 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "scaleout-creds" "key" "login") | indent 10 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 88 | - name: SCALEOUT_PASSWORD |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 89 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "scaleout-creds" "key" "password") | indent 10 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 90 | - name: NETBOX_APIKEY |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 91 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "netbox-apikey" "key" "password") | indent 10 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 92 | - name: SDNC_DB_USER |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 93 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "login") | indent 10 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 94 | - name: SDNC_DB_PASSWORD |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 95 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "password") | indent 10 }} |
Dan Timoney | 9e310e7 | 2021-02-23 11:25:39 -0500 | [diff] [blame] | 96 | - name: MYSQL_USER |
| 97 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "login") | indent 10 }} |
| 98 | - name: MYSQL_PASSWORD |
| 99 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "password") | indent 10 }} |
Alexander Dehn | 2ae954d | 2020-10-20 15:57:42 +0000 | [diff] [blame] | 100 | - name: ODL_ADMIN_USERNAME |
| 101 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "odl-creds" "key" "login") | indent 10 }} |
Dan Timoney | 9e310e7 | 2021-02-23 11:25:39 -0500 | [diff] [blame] | 102 | - name: ODL_USER |
| 103 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "odl-creds" "key" "login") | indent 10 }} |
Alexander Dehn | 2ae954d | 2020-10-20 15:57:42 +0000 | [diff] [blame] | 104 | - name: ODL_ADMIN_PASSWORD |
| 105 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "odl-creds" "key" "password") | indent 10 }} |
Dan Timoney | 9e310e7 | 2021-02-23 11:25:39 -0500 | [diff] [blame] | 106 | - name: ODL_PASSWORD |
| 107 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "odl-creds" "key" "password") | indent 10 }} |
demskeq8 | 9d26b33 | 2021-01-14 16:45:28 +0100 | [diff] [blame] | 108 | {{ if and .Values.config.sdnr.dmaapProxy.enabled .Values.config.sdnr.dmaapProxy.usepwd }} |
| 109 | - name: DMAAP_HTTP_PROXY_USERNAME |
| 110 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "dmaap-proxy-creds" "key" "login") | indent 10 }} |
| 111 | - name: DMAAP_HTTP_PROXY_PASSWORD |
| 112 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "dmaap-proxy-creds" "key" "password") | indent 10 }} |
| 113 | {{- end }} |
demskeq8 | b43e92c | 2021-02-12 15:43:48 +0100 | [diff] [blame] | 114 | {{ if .Values.config.sdnr.oauth.enabled }} |
| 115 | - name: OAUTH_TOKEN_SECRET |
| 116 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "oauth-token-secret" "key" "password") | indent 10 }} |
| 117 | - name: KEYCLOAK_SECRET |
| 118 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "keycloak-secret" "key" "password") | indent 10 }} |
| 119 | |
| 120 | - name: ENABLE_ODLUX_RBAC |
| 121 | value: "{{ .Values.config.sdnr.oauth.odluxRbac.enabled | default "true" }}" |
| 122 | {{ end }} |
demskeq8 | 9d26b33 | 2021-01-14 16:45:28 +0100 | [diff] [blame] | 123 | |
Alexander Dehn | 2ae954d | 2020-10-20 15:57:42 +0000 | [diff] [blame] | 124 | |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 125 | volumeMounts: |
| 126 | - mountPath: /config-input |
| 127 | name: config-input |
| 128 | - mountPath: /config |
| 129 | name: properties |
Sylvain Desbureaux | cbc703c | 2020-11-19 17:52:07 +0100 | [diff] [blame] | 130 | image: {{ include "repositoryGenerator.image.envsubst" . }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 131 | imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }} |
| 132 | name: {{ include "common.name" . }}-update-config |
Alexander Dehn | 9b797d6 | 2020-04-21 09:53:50 +0000 | [diff] [blame] | 133 | {{ if .Values.dgbuilder.enabled -}} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 134 | - command: |
Sylvain Desbureaux | 1694e1d | 2020-08-21 09:58:25 +0200 | [diff] [blame] | 135 | - /app/ready.py |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 136 | args: |
Alexander Dehn | 9b797d6 | 2020-04-21 09:53:50 +0000 | [diff] [blame] | 137 | {{ if or .Values.dgbuilder.enabled .Values.config.sdnr.enabled -}} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 138 | - --container-name |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 139 | - {{ include "common.mariadbService" . }} |
Dan Timoney | 1755477 | 2021-04-01 15:49:23 -0400 | [diff] [blame] | 140 | - --job-name |
| 141 | - {{ include "common.fullname" . }}-dbinit-job |
Alexander Dehn | 9b797d6 | 2020-04-21 09:53:50 +0000 | [diff] [blame] | 142 | {{ end -}} |
| 143 | {{ if .Values.config.sdnr.enabled -}} |
| 144 | - --container-name |
| 145 | - {{ include "common.name" . }}-sdnrdb-init-job |
| 146 | {{ end -}} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 147 | env: |
| 148 | - name: NAMESPACE |
| 149 | valueFrom: |
| 150 | fieldRef: |
| 151 | apiVersion: v1 |
| 152 | fieldPath: metadata.namespace |
Sylvain Desbureaux | cbc703c | 2020-11-19 17:52:07 +0100 | [diff] [blame] | 153 | image: {{ include "repositoryGenerator.image.readiness" . }} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 154 | imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }} |
Sylvain Desbureaux | 25e01d5 | 2019-12-09 11:06:39 +0100 | [diff] [blame] | 155 | name: {{ include "common.name" . }}-readiness |
Alexander Dehn | 9b797d6 | 2020-04-21 09:53:50 +0000 | [diff] [blame] | 156 | {{ end -}} |
Krzysztof Opasiak | 8ab4547 | 2020-05-12 12:53:50 +0200 | [diff] [blame] | 157 | {{ include "common.certInitializer.initContainer" . | indent 6 }} |
Remigiusz Janeczek | 42177a1 | 2020-12-10 13:10:15 +0100 | [diff] [blame] | 158 | - name: {{ include "common.name" . }}-chown |
Sylvain Desbureaux | cbc703c | 2020-11-19 17:52:07 +0100 | [diff] [blame] | 159 | image: {{ include "repositoryGenerator.image.busybox" . }} |
Lucjan Bryndza | 5c63e93 | 2020-06-25 08:43:23 +0000 | [diff] [blame] | 160 | command: |
| 161 | - sh |
| 162 | args: |
| 163 | - -c |
Dan Timoney | 2ee28a5 | 2021-01-15 16:39:50 -0500 | [diff] [blame] | 164 | - | |
Dan Timoney | 2ee28a5 | 2021-01-15 16:39:50 -0500 | [diff] [blame] | 165 | mkdir {{ .Values.persistence.mdsalPath }}/journal |
Remigiusz Janeczek | 42177a1 | 2020-12-10 13:10:15 +0100 | [diff] [blame] | 166 | mkdir {{ .Values.persistence.mdsalPath }}/snapshots |
demskeq8 | 3b3b7fd | 2021-02-18 09:41:59 +0100 | [diff] [blame] | 167 | mkdir {{ .Values.persistence.mdsalPath }}/daexim |
Dan Timoney | 2ee28a5 | 2021-01-15 16:39:50 -0500 | [diff] [blame] | 168 | chown -R {{ .Values.config.odlUid }}:{{ .Values.config.odlGid}} {{ .Values.persistence.mdsalPath }} |
Lucjan Bryndza | 5c63e93 | 2020-06-25 08:43:23 +0000 | [diff] [blame] | 169 | {{- if .Values.global.aafEnabled }} |
Dan Timoney | 2ee28a5 | 2021-01-15 16:39:50 -0500 | [diff] [blame] | 170 | chown -R {{ .Values.config.odlUid }}:{{ .Values.config.odlGid}} {{ .Values.certInitializer.credsPath }} |
Lucjan Bryndza | 5c63e93 | 2020-06-25 08:43:23 +0000 | [diff] [blame] | 171 | {{- end }} |
Timoney, Dan (dt5972) | ba4d2eb | 2019-05-07 13:32:42 -0400 | [diff] [blame] | 172 | volumeMounts: |
Krzysztof Opasiak | 8ab4547 | 2020-05-12 12:53:50 +0200 | [diff] [blame] | 173 | {{ include "common.certInitializer.volumeMount" . | indent 10 }} |
Timoney, Dan (dt5972) | ba4d2eb | 2019-05-07 13:32:42 -0400 | [diff] [blame] | 174 | - mountPath: {{ .Values.persistence.mdsalPath }} |
Sylvain Desbureaux | 25e01d5 | 2019-12-09 11:06:39 +0100 | [diff] [blame] | 175 | name: {{ include "common.fullname" . }}-data |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 176 | containers: |
| 177 | - name: {{ include "common.name" . }} |
Sylvain Desbureaux | cbc703c | 2020-11-19 17:52:07 +0100 | [diff] [blame] | 178 | image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 179 | imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }} |
Piotr Marcinkiewicz | 598f2d8 | 2021-06-01 12:36:13 +0200 | [diff] [blame] | 180 | {{- if .Values.global.cmpv2Enabled }} |
Piotr Marcinkiewicz | af82e2b | 2021-02-11 11:23:31 +0100 | [diff] [blame] | 181 | {{- $linkCommand := include "common.certManager.linkVolumeMounts" . }} |
| 182 | lifecycle: |
| 183 | postStart: |
| 184 | exec: |
| 185 | command: ["sh", "-c", {{$linkCommand | quote}} ] |
| 186 | {{- end }} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 187 | command: ["/bin/bash"] |
Dan Timoney | 2ee28a5 | 2021-01-15 16:39:50 -0500 | [diff] [blame] | 188 | args: ["-c", "/opt/onap/sdnc/bin/createLinks.sh ; /opt/onap/sdnc/bin/startODL.sh"] |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 189 | ports: |
| 190 | - containerPort: {{ .Values.service.internalPort }} |
| 191 | - containerPort: {{ .Values.service.internalPort2 }} |
| 192 | - containerPort: {{ .Values.service.internalPort3 }} |
| 193 | - containerPort: {{ .Values.service.clusterPort }} |
demskeq8 | 2785466 | 2021-04-08 14:49:47 +0200 | [diff] [blame] | 194 | {{- if .Values.config.sdnr.netconfCallHome.enabled }} |
| 195 | - containerPort: {{ .Values.service.callHomePort }} |
| 196 | {{- end }} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 197 | readinessProbe: |
| 198 | tcpSocket: |
| 199 | port: {{ .Values.service.internalPort }} |
| 200 | initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }} |
| 201 | periodSeconds: {{ .Values.readiness.periodSeconds }} |
| 202 | env: |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 203 | - name: MYSQL_ROOT_PASSWORD |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 204 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-root-password" "key" "password") | indent 12 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 205 | - name: ODL_ADMIN_USERNAME |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 206 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "odl-creds" "key" "login") | indent 12 }} |
Dan Timoney | 9e310e7 | 2021-02-23 11:25:39 -0500 | [diff] [blame] | 207 | - name: ODL_USER |
| 208 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "odl-creds" "key" "login") | indent 12 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 209 | - name: ODL_ADMIN_PASSWORD |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 210 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "odl-creds" "key" "password") | indent 12 }} |
Dan Timoney | 9e310e7 | 2021-02-23 11:25:39 -0500 | [diff] [blame] | 211 | - name: ODL_PASSWORD |
| 212 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "odl-creds" "key" "password") | indent 12 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 213 | - name: SDNC_DB_USER |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 214 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "login") | indent 12 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 215 | - name: SDNC_DB_PASSWORD |
Krzysztof Opasiak | ab7a6bb | 2020-03-24 03:30:51 +0100 | [diff] [blame] | 216 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "password") | indent 12 }} |
Dan Timoney | 9e310e7 | 2021-02-23 11:25:39 -0500 | [diff] [blame] | 217 | - name: MYSQL_USER |
| 218 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "login") | indent 12 }} |
| 219 | - name: MYSQL_PASSWORD |
| 220 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "db-secret" "key" "password") | indent 12 }} |
| 221 | - name: MYSQL_DATABASE |
| 222 | value: "{{ .Values.config.dbSdnctlDatabase }}" |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 223 | - name: SDNC_CONFIG_DIR |
| 224 | value: "{{ .Values.config.configDir }}" |
Dan Timoney | 9e310e7 | 2021-02-23 11:25:39 -0500 | [diff] [blame] | 225 | - name: AAI_CLIENT_NAME |
| 226 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "aai-user-creds" "key" "login") | indent 12 }} |
| 227 | - name: AAI_CLIENT_PASSWORD |
| 228 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "aai-user-creds" "key" "password") | indent 12 }} |
| 229 | - name: AAI_TRUSTSTORE_PASSWORD |
| 230 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "aai-truststore-password" "key" "password") | indent 12 }} |
| 231 | - name: ANSIBLE_TRUSTSTORE_PASSWORD |
| 232 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "ansible-truststore-password" "key" "password") | indent 12 }} |
| 233 | - name: SO_USER |
| 234 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "so-user-creds" "key" "login") | indent 12 }} |
| 235 | - name: SO_PASSWORD |
| 236 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "so-user-creds" "key" "password") | indent 12 }} |
| 237 | - name: NENG_USER |
| 238 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "neng-user-creds" "key" "login") | indent 12 }} |
| 239 | - name: NENG_PASSWORD |
| 240 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "neng-user-creds" "key" "password") | indent 12 }} |
| 241 | - name: CDS_USER |
| 242 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "cds-user-creds" "key" "login") | indent 12 }} |
| 243 | - name: CDS_PASSWORD |
| 244 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "cds-user-creds" "key" "password") | indent 12 }} |
| 245 | - name: HONEYCOMB_USER |
| 246 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "honeycomb-user-creds" "key" "login") | indent 12 }} |
| 247 | - name: HONEYCOMB_PASSWORD |
| 248 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "honeycomb-user-creds" "key" "password") | indent 12 }} |
| 249 | - name: TRUSTSTORE_PASSWORD |
| 250 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "truststore-password" "key" "password") | indent 12 }} |
| 251 | - name: KEYSTORE_PASSWORD |
| 252 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "keystore-password" "key" "password") | indent 12 }} |
| 253 | - name: DMAAP_USER |
| 254 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "dmaap-user-creds" "key" "login") | indent 12 }} |
| 255 | - name: DMAAP_PASSWORD |
| 256 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "dmaap-user-creds" "key" "password") | indent 12 }} |
| 257 | - name: DMAAP_AUTHKEY |
| 258 | {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "dmaap-authkey" "key" "password") | indent 12 }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 259 | - name: ENABLE_ODL_CLUSTER |
| 260 | value: "{{ .Values.config.enableClustering }}" |
| 261 | - name: MY_ODL_CLUSTER |
| 262 | value: "{{ .Values.config.myODLCluster }}" |
| 263 | - name: PEER_ODL_CLUSTER |
| 264 | value: "{{ .Values.config.peerODLCluster }}" |
| 265 | - name: IS_PRIMARY_CLUSTER |
| 266 | value: "{{ .Values.config.isPrimaryCluster }}" |
| 267 | - name: GEO_ENABLED |
| 268 | value: "{{ .Values.config.geoEnabled}}" |
| 269 | - name: SDNC_AAF_ENABLED |
| 270 | value: "{{ .Values.global.aafEnabled}}" |
| 271 | - name: SDNC_REPLICAS |
| 272 | value: "{{ .Values.replicaCount }}" |
| 273 | - name: MYSQL_HOST |
| 274 | value: {{ include "common.mariadbService" . }} |
Dan Timoney | 2ee28a5 | 2021-01-15 16:39:50 -0500 | [diff] [blame] | 275 | - name: MDSAL_PATH |
| 276 | value: {{ .Values.persistence.mdsalPath }} |
| 277 | - name: DAEXIM_PATH |
| 278 | value: {{ .Values.persistence.daeximPath }} |
| 279 | - name: JOURNAL_PATH |
| 280 | value: {{ .Values.persistence.journalPath }} |
| 281 | - name: SNAPSHOTS_PATH |
| 282 | value: {{ .Values.persistence.snapshotsPath }} |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 283 | - name: JAVA_HOME |
| 284 | value: "{{ .Values.config.javaHome}}" |
Dan Timoney | a98765b | 2020-09-14 11:57:55 -0400 | [diff] [blame] | 285 | - name: JAVA_OPTS |
| 286 | value: "-Xms{{.Values.config.odl.javaOptions.minMemory}} -Xmx{{.Values.config.odl.javaOptions.maxMemory}}" |
Sylvain Desbureaux | bcf7251 | 2020-07-22 10:45:18 +0200 | [diff] [blame] | 287 | - name: KARAF_CONSOLE_LOG_LEVEL |
| 288 | value: "{{ include "common.log.level" . }}" |
Alexander Dehn | 9b797d6 | 2020-04-21 09:53:50 +0000 | [diff] [blame] | 289 | - name: SDNRWT |
| 290 | value: "{{ .Values.config.sdnr.enabled | default "false"}}" |
| 291 | {{- if eq .Values.config.sdnr.mode "web" }} |
| 292 | - name: SDNRDM |
| 293 | value: "true" |
| 294 | {{- end }} |
| 295 | - name: SDNRONLY |
| 296 | value: "{{ .Values.config.sdnr.sdnronly | default "false" }}" |
| 297 | - name: SDNRDBURL |
| 298 | {{- $prefix := ternary "https" "http" .Values.global.aafEnabled}} |
| 299 | value: "{{$prefix}}://{{ .Values.elasticsearch.service.name | default "sdnrdb"}}.{{.Release.Namespace}}:{{.Values.elasticsearch.service.port | default "9200"}}" |
| 300 | {{- if .Values.config.sdnr.sdnrdbTrustAllCerts }} |
| 301 | - name: SDNRDBTRUSTALLCERTS |
| 302 | value: "true" |
Piotr Marcinkiewicz | af82e2b | 2021-02-11 11:23:31 +0100 | [diff] [blame] | 303 | {{- end }} |
| 304 | {{- if .Values.global.cmpv2Enabled }} |
| 305 | - name: ODL_CERT_DIR |
| 306 | value: {{ (mustFirst (.Values.certificates)).mountPath }} |
| 307 | {{- end }} |
demskeq8 | b43e92c | 2021-02-12 15:43:48 +0100 | [diff] [blame] | 308 | - name: ENABLE_OAUTH |
| 309 | value: "{{ .Values.config.sdnr.oauth.enabled | default "false" }}" |
demskeq8 | 2785466 | 2021-04-08 14:49:47 +0200 | [diff] [blame] | 310 | - name: SDNR_NETCONF_CALLHOME_ENABLED |
| 311 | value: "{{ .Values.config.sdnr.netconfCallHome.enabled | default "false" }}" |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 312 | volumeMounts: |
Krzysztof Opasiak | 8ab4547 | 2020-05-12 12:53:50 +0200 | [diff] [blame] | 313 | {{ include "common.certInitializer.volumeMount" . | indent 10 }} |
Piotr Marcinkiewicz | 598f2d8 | 2021-06-01 12:36:13 +0200 | [diff] [blame] | 314 | {{- if .Values.global.cmpv2Enabled }} |
Piotr Marcinkiewicz | 5957101 | 2021-01-12 17:37:08 +0100 | [diff] [blame] | 315 | {{ include "common.certManager.volumeMounts" . | indent 10 }} |
| 316 | {{- end }} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 317 | - mountPath: /etc/localtime |
| 318 | name: localtime |
| 319 | readOnly: true |
| 320 | - mountPath: /opt/opendaylight/current/etc/org.ops4j.pax.logging.cfg |
| 321 | name: sdnc-logging-cfg-config |
| 322 | subPath: org.ops4j.pax.logging.cfg |
jmac | a68f4cb | 2018-05-10 22:44:19 +0000 | [diff] [blame] | 323 | - mountPath: {{ .Values.config.binDir }}/installSdncDb.sh |
| 324 | name: bin |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 325 | subPath: installSdncDb.sh |
Dan Timoney | 2ee28a5 | 2021-01-15 16:39:50 -0500 | [diff] [blame] | 326 | - mountPath: {{ .Values.config.binDir }}/createLinks.sh |
| 327 | name: bin |
| 328 | subPath: createLinks.sh |
Konrad Bańka | 5ea1db3 | 2020-04-06 14:32:46 +0200 | [diff] [blame] | 329 | - mountPath: {{ .Values.config.ccsdkConfigDir }}/aaiclient.properties |
| 330 | name: properties |
| 331 | subPath: aaiclient.properties |
jmac | a68f4cb | 2018-05-10 22:44:19 +0000 | [diff] [blame] | 332 | - mountPath: {{ .Values.config.configDir }}/aaiclient.properties |
| 333 | name: properties |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 334 | subPath: aaiclient.properties |
jmac | a68f4cb | 2018-05-10 22:44:19 +0000 | [diff] [blame] | 335 | - mountPath: {{ .Values.config.configDir }}/dblib.properties |
| 336 | name: properties |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 337 | subPath: dblib.properties |
jmac | 7c43467 | 2018-05-11 20:14:17 +0000 | [diff] [blame] | 338 | - mountPath: {{ .Values.config.configDir }}/lcm-dg.properties |
| 339 | name: properties |
| 340 | subPath: lcm-dg.properties |
jmac | a68f4cb | 2018-05-10 22:44:19 +0000 | [diff] [blame] | 341 | - mountPath: {{ .Values.config.configDir }}/svclogic.properties |
| 342 | name: properties |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 343 | subPath: svclogic.properties |
| 344 | - mountPath: /opt/onap/sdnc/svclogic/config/svclogic.properties |
jmac | a68f4cb | 2018-05-10 22:44:19 +0000 | [diff] [blame] | 345 | name: properties |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 346 | subPath: svclogic.properties |
Alexis de Talhouët | 43c67e0 | 2018-09-20 16:49:16 -0400 | [diff] [blame] | 347 | - mountPath: {{ .Values.config.configDir }}/netbox.properties |
| 348 | name: properties |
| 349 | subPath: netbox.properties |
| 350 | - mountPath: {{ .Values.config.configDir }}/blueprints-processor-adaptor.properties |
| 351 | name: properties |
| 352 | subPath: blueprints-processor-adaptor.properties |
jmac | 8d6dc96 | 2018-04-26 14:26:55 +0000 | [diff] [blame] | 353 | - mountPath: {{ .Values.persistence.mdsalPath }} |
Sylvain Desbureaux | 25e01d5 | 2019-12-09 11:06:39 +0100 | [diff] [blame] | 354 | name: {{ include "common.fullname" . }}-data |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 355 | - mountPath: /var/log/onap |
| 356 | name: logs |
Timoney, Dan (dt5972) | 5877477 | 2019-08-21 16:50:54 -0400 | [diff] [blame] | 357 | - mountPath: {{ .Values.config.odl.salConfigDir }}/{{ .Values.config.odl.salConfigVersion}}/sal-clustering-config-{{ .Values.config.odl.salConfigVersion}}-akkaconf.xml |
| 358 | name: properties |
| 359 | subPath: akka.conf |
| 360 | - mountPath: {{ .Values.config.odl.etcDir }}/org.opendaylight.controller.cluster.datastore.cfg |
| 361 | name: properties |
| 362 | subPath: org.opendaylight.controller.cluster.datastore.cfg |
Dan Timoney | 9520e7c | 2021-01-12 11:10:58 -0500 | [diff] [blame] | 363 | - mountPath: {{ .Values.config.odl.etcDir }}/org.opendaylight.aaa.filterchain.cfg |
| 364 | name: properties |
| 365 | subPath: org.opendaylight.aaa.filterchain.cfg |
Timoney, Dan (dt5972) | 5877477 | 2019-08-21 16:50:54 -0400 | [diff] [blame] | 366 | - mountPath: {{ .Values.config.odl.binDir }}/setenv |
| 367 | name: properties |
| 368 | subPath: setenv |
Alexander Dehn | 9b797d6 | 2020-04-21 09:53:50 +0000 | [diff] [blame] | 369 | - mountPath: {{ .Values.config.odl.etcDir }}/mountpoint-registrar.properties |
| 370 | name: properties |
| 371 | subPath: mountpoint-registrar.properties |
| 372 | - mountPath: {{ .Values.config.odl.etcDir }}/mountpoint-state-provider.properties |
| 373 | name: properties |
| 374 | subPath: mountpoint-state-provider.properties |
demskeq8 | a86300a | 2021-02-10 09:53:33 +0100 | [diff] [blame] | 375 | - mountPath: {{ .Values.config.odl.etcDir }}/org.opendaylight.daexim.cfg |
| 376 | name: properties |
| 377 | subPath: org.opendaylight.daexim.cfg |
demskeq8 | b43e92c | 2021-02-12 15:43:48 +0100 | [diff] [blame] | 378 | {{- if .Values.config.sdnr.oauth.enabled }} |
| 379 | - mountPath: {{ .Values.config.odl.etcDir }}/oauth-provider.config.json |
| 380 | name: properties |
| 381 | subPath: oauth-provider.config.json |
| 382 | {{ end }} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 383 | resources: |
Mandeep Khinda | 5e3f36a | 2018-09-24 15:25:42 +0000 | [diff] [blame] | 384 | {{ include "common.resources" . | indent 12 }} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 385 | {{- if .Values.nodeSelector }} |
| 386 | nodeSelector: |
| 387 | {{ toYaml .Values.nodeSelector | indent 10 }} |
| 388 | {{- end -}} |
| 389 | {{- if .Values.affinity }} |
| 390 | affinity: |
| 391 | {{ toYaml .Values.affinity | indent 10 }} |
| 392 | {{- end }} |
| 393 | |
| 394 | # side car containers |
| 395 | - name: filebeat-onap |
Sylvain Desbureaux | cbc703c | 2020-11-19 17:52:07 +0100 | [diff] [blame] | 396 | image: {{ include "repositoryGenerator.image.logging" . }} |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 397 | imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }} |
| 398 | volumeMounts: |
| 399 | - mountPath: /usr/share/filebeat/filebeat.yml |
| 400 | name: filebeat-conf |
| 401 | subPath: filebeat.yml |
| 402 | - mountPath: /var/log/onap |
| 403 | name: logs |
| 404 | - mountPath: /usr/share/filebeat/data |
| 405 | name: data-filebeat |
jmac | 8d6dc96 | 2018-04-26 14:26:55 +0000 | [diff] [blame] | 406 | imagePullSecrets: |
| 407 | - name: "{{ include "common.namespace" . }}-docker-registry-key" |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 408 | volumes: |
| 409 | - name: localtime |
| 410 | hostPath: |
| 411 | path: /etc/localtime |
| 412 | - name: logs |
| 413 | emptyDir: {} |
| 414 | - name: data-filebeat |
| 415 | emptyDir: {} |
| 416 | - name: filebeat-conf |
| 417 | configMap: |
| 418 | name: {{ include "common.fullname" . }}-filebeat-configmap |
| 419 | - name: sdnc-logging-cfg-config |
| 420 | configMap: |
| 421 | name: {{ include "common.fullname" . }}-log-configmap |
jmac | a68f4cb | 2018-05-10 22:44:19 +0000 | [diff] [blame] | 422 | - name: bin |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 423 | configMap: |
jmac | a68f4cb | 2018-05-10 22:44:19 +0000 | [diff] [blame] | 424 | name: {{ include "common.fullname" . }}-bin |
| 425 | defaultMode: 0755 |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 426 | - name: config-input |
jmac | 065e2ce | 2018-03-29 01:18:02 +0000 | [diff] [blame] | 427 | configMap: |
jmac | a68f4cb | 2018-05-10 22:44:19 +0000 | [diff] [blame] | 428 | name: {{ include "common.fullname" . }}-properties |
| 429 | defaultMode: 0644 |
Krzysztof Opasiak | cc97c73 | 2020-02-25 23:31:20 +0100 | [diff] [blame] | 430 | - name: properties |
| 431 | emptyDir: |
| 432 | medium: Memory |
jmac | 8d6dc96 | 2018-04-26 14:26:55 +0000 | [diff] [blame] | 433 | {{ if not .Values.persistence.enabled }} |
Sylvain Desbureaux | 25e01d5 | 2019-12-09 11:06:39 +0100 | [diff] [blame] | 434 | - name: {{ include "common.fullname" . }}-data |
jmac | 8d6dc96 | 2018-04-26 14:26:55 +0000 | [diff] [blame] | 435 | emptyDir: {} |
| 436 | {{ else }} |
Krzysztof Opasiak | 8ab4547 | 2020-05-12 12:53:50 +0200 | [diff] [blame] | 437 | {{ include "common.certInitializer.volumes" . | nindent 8 }} |
Piotr Marcinkiewicz | 598f2d8 | 2021-06-01 12:36:13 +0200 | [diff] [blame] | 438 | {{- if .Values.global.cmpv2Enabled }} |
Piotr Marcinkiewicz | 5957101 | 2021-01-12 17:37:08 +0100 | [diff] [blame] | 439 | {{ include "common.certManager.volumes" . | nindent 8 }} |
| 440 | {{- end }} |
jmac | 8d6dc96 | 2018-04-26 14:26:55 +0000 | [diff] [blame] | 441 | volumeClaimTemplates: |
| 442 | - metadata: |
Sylvain Desbureaux | 25e01d5 | 2019-12-09 11:06:39 +0100 | [diff] [blame] | 443 | name: {{ include "common.fullname" . }}-data |
jmac | 8d6dc96 | 2018-04-26 14:26:55 +0000 | [diff] [blame] | 444 | labels: |
| 445 | name: {{ include "common.fullname" . }} |
Sylvain Desbureaux | 25e01d5 | 2019-12-09 11:06:39 +0100 | [diff] [blame] | 446 | chart: "{{ .Chart.Name }}-{{ .Chart.Version }}" |
Krzysztof Opasiak | 137d7cc | 2020-01-24 23:49:11 +0100 | [diff] [blame] | 447 | release: "{{ include "common.release" . }}" |
Sylvain Desbureaux | 25e01d5 | 2019-12-09 11:06:39 +0100 | [diff] [blame] | 448 | heritage: "{{ .Release.Service }}" |
jmac | 8d6dc96 | 2018-04-26 14:26:55 +0000 | [diff] [blame] | 449 | spec: |
Sylvain Desbureaux | 25e01d5 | 2019-12-09 11:06:39 +0100 | [diff] [blame] | 450 | accessModes: |
| 451 | - {{ .Values.persistence.accessMode }} |
| 452 | storageClassName: {{ include "common.storageClass" . }} |
jmac | 8d6dc96 | 2018-04-26 14:26:55 +0000 | [diff] [blame] | 453 | resources: |
| 454 | requests: |
| 455 | storage: {{ .Values.persistence.size }} |
Sylvain Desbureaux | 25e01d5 | 2019-12-09 11:06:39 +0100 | [diff] [blame] | 456 | {{- end }} |