diff --git a/src/main/helm/templates/deployment.yaml b/src/main/helm/templates/deployment.yaml index a5932236210a96e8b671969620f939ad14619ca6..966a166edc0cda2bd6075b9dc8c17ee49062d501 100644 --- a/src/main/helm/templates/deployment.yaml +++ b/src/main/helm/templates/deployment.yaml @@ -97,6 +97,40 @@ spec: value: {{ .Values.osipostfach.httpproxy.auth.password }} {{- end }} {{- end }} + - name: ozgcloud_osiv2_enabled + value: {{ (.Values.ozgcloud.osiv2).enabled }} + {{- if (.Values.ozgcloud.osiv2).enabled}} + - name: ozgcloud_osiv2_auth_client-id + value: {{ .Values.ozgcloud.osiv2.auth.clientid }} + - name: ozgcloud_osiv2_auth_client-secret + value: {{ .Values.ozgcloud.osiv2.auth.clientsecret }} + - name: ozgcloud_osiv2_auth_scope + value: {{ .Values.ozgcloud.osiv2.auth.scope }} + - name: ozgcloud_osiv2_auth_token-uri + value: {{ .Values.ozgcloud.osiv2.auth.tokenuri }} + - name: ozgcloud_osiv2_auth_resource + value: {{ .Values.ozgcloud.osiv2.auth.resource }} + - name: ozgcloud_osiv2_api_url + value: {{ .Values.ozgcloud.osiv2.api.url }} + - name: ozgcloud_osiv2_api_tenant + value: {{ .Values.ozgcloud.osiv2.api.tenant}} + - name: ozgcloud_osiv2_api_name-identifier + value: {{ .Values.ozgcloud.osiv2.api.nameidentifier}} + - name: ozgcloud_osiv2_http-proxy_enabled + value: {{ (.Values.ozgcloud.osiv2.httpproxy).enabled }} + {{- if (.Values.ozgcloud.osiv2.httpproxy).enabled}} + - name: ozgcloud_osiv2_http-proxy_host + value: {{ .Values.ozgcloud.osiv2.httpproxy.host }} + - name: ozgcloud_osiv2_http-proxy_port + value: {{ .Values.ozgcloud.osiv2.httpproxy.port }} + {{- if (and (.Values.ozgcloud.osiv2.httpproxy).username (.Values.ozgcloud.osiv2.httpproxy).password) }} + - name: ozgcloud_osiv2_http-proxy_username + value: {{ .Values.ozgcloud.osiv2.httpproxy.username }} + - name: ozgcloud_osiv2_http-proxy_password + value: {{ .Values.ozgcloud.osiv2.httpproxy.password }} + {{- end }} + {{- end }} + {{- end }} {{- if (.Values.rabbitmq).enabled }} - name: spring_rabbitmq_username valueFrom: diff --git a/src/main/helm/values.yaml b/src/main/helm/values.yaml index a9130a41e6164e82f5f94df7a3a64e2ffb5dc65d..51f295e9052538c0707833fb211411f03a2477bd 100644 --- a/src/main/helm/values.yaml +++ b/src/main/helm/values.yaml @@ -71,3 +71,5 @@ ozgcloud: namespace: aggregationManager: enabled: false + osiv2: + enabled: false diff --git a/src/test/helm/deployment_osiv2_test.yaml b/src/test/helm/deployment_osiv2_test.yaml new file mode 100644 index 0000000000000000000000000000000000000000..e2ab306ae426c546496bf114628bfc15bc4881fa --- /dev/null +++ b/src/test/helm/deployment_osiv2_test.yaml @@ -0,0 +1,190 @@ +# +# Copyright (C) 2025 Das Land Schleswig-Holstein vertreten durch den +# Ministerpräsidenten des Landes Schleswig-Holstein +# Staatskanzlei +# Abteilung Digitalisierung und zentrales IT-Management der Landesregierung +# +# Lizenziert unter der EUPL, Version 1.2 oder - sobald +# diese von der Europäischen Kommission genehmigt wurden - +# Folgeversionen der EUPL ("Lizenz"); +# Sie dürfen dieses Werk ausschließlich gemäß +# dieser Lizenz nutzen. +# Eine Kopie der Lizenz finden Sie hier: +# +# https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 +# +# Sofern nicht durch anwendbare Rechtsvorschriften +# gefordert oder in schriftlicher Form vereinbart, wird +# die unter der Lizenz verbreitete Software "so wie sie +# ist", OHNE JEGLICHE GEWÄHRLEISTUNG ODER BEDINGUNGEN - +# ausdrücklich oder stillschweigend - verbreitet. +# Die sprachspezifischen Genehmigungen und Beschränkungen +# unter der Lizenz sind dem Lizenztext zu entnehmen. +# + +suite: deployment osiv2 +release: + name: vorgang-manager + namespace: sh-helm-test +templates: + - templates/deployment.yaml +set: + baseUrl: test.sh.ozg-cloud.de + imagePullSecret: test-image-pull-secret + ozgcloud: + environment: dev + bezeichner: helm + osiv2: + auth: + clientid: "client-id" + clientsecret: "client-secret" + scope: "scope" + tokenuri: "token-uri" + resource: "resource" + api: + url: "https://api.url" + tenant: "tenant" + nameidentifier: "name-identifier" + httpproxy: + enabled: "false" +tests: + - it: should set osiv2 values + set: + ozgcloud: + osiv2: + enabled: true + asserts: + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_enabled + value: true + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_auth_client-id + value: "client-id" + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_auth_client-secret + value: "client-secret" + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_auth_scope + value: "scope" + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_auth_token-uri + value: "token-uri" + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_auth_resource + value: "resource" + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_api_url + value: "https://api.url" + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_api_tenant + value: "tenant" + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_api_name-identifier + value: "name-identifier" + - it: should set osiv2 proxy values + set: + ozgcloud: + osiv2: + enabled: true + httpproxy: + enabled: "true" + host: "http://proxy.host" + port: "8080" + username: "username" + password: "password" + asserts: + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_http-proxy_enabled + value: true + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_http-proxy_host + value: "http://proxy.host" + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_http-proxy_port + value: 8080 + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_http-proxy_username + value: "username" + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_http-proxy_password + value: "password" + - it: should not by default set osiv2 values + asserts: + - contains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_enabled + value: false + - notContains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_auth_client_id + any: true + - notContains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_auth_client_secret + any: true + - notContains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_auth_scope + any: true + - notContains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_auth_token-uri + any: true + - notContains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_auth_resource + any: true + - notContains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_api_url + any: true + - notContains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_api_tenant + any: true + - notContains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_api_name-identifier + any: true + - notContains: + path: spec.template.spec.containers[0].env + content: + name: ozgcloud_osiv2_http_proxy_enabled + any: true