diff --git a/src/main/helm/templates/_helpers.tpl b/src/main/helm/templates/_helpers.tpl index 9d24fd8ea73b2736cb5172a3f3da10da532cfc0a..bbb798821b2f9441f61c4143d24586a0f91cd100 100644 --- a/src/main/helm/templates/_helpers.tpl +++ b/src/main/helm/templates/_helpers.tpl @@ -41,12 +41,6 @@ app.kubernetes.io/name: {{ .Release.Name }} app.kubernetes.io/namespace: {{ include "app.namespace" . }} {{- end -}} -{{- define "app.imagePullSecret" }} -{{- with .Values.imageCredentials }} -{{- printf "{\"auths\":{\"%s\":{\"username\":\"%s\",\"password\":\"%s\",\"email\":\"%s\",\"auth\":\"%s\"}}}" .registry .username .password .email (printf "%s:%s" .username .password | b64enc) | b64enc }} -{{- end }} -{{- end }} - {{- define "app.cronjobScheduler" }} {{- printf "%d %d * * *" (div (randNumeric 2) 2) (div (randNumeric 1) 2) -}} {{- end -}} diff --git a/src/main/helm/templates/deployment.yaml b/src/main/helm/templates/deployment.yaml index a602dfe739eede70e7ec97d6994296e953c50ce3..66262635fb8c204ec827124a07fe52c71c3d95a1 100644 --- a/src/main/helm/templates/deployment.yaml +++ b/src/main/helm/templates/deployment.yaml @@ -226,11 +226,7 @@ spec: dnsConfig: {} dnsPolicy: ClusterFirst imagePullSecrets: - {{- if .Values.imagePullSecret }} - - name: {{ .Values.imagePullSecret }} - {{ else }} - - name: user-manager-image-pull-secret - {{- end }} + - name: {{ required "imagePullSecret must be set" .Values.imagePullSecret }} restartPolicy: Always {{- with .Values.hostAliases }} hostAliases: diff --git a/src/main/helm/templates/image_pull_secret.yaml b/src/main/helm/templates/image_pull_secret.yaml deleted file mode 100644 index 02be1463951799822886c4bc8593c9310be130fa..0000000000000000000000000000000000000000 --- a/src/main/helm/templates/image_pull_secret.yaml +++ /dev/null @@ -1,34 +0,0 @@ -# -# Copyright (C) 2022 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. -# - -{{- if not (.Values.imagePullSecret) }} -apiVersion: v1 -kind: Secret -metadata: - name: user-manager-image-pull-secret - namespace: {{ include "app.namespace" . }} -type: kubernetes.io/dockerconfigjson -data: - .dockerconfigjson: {{ include "app.imagePullSecret" . }} -{{- end }} \ No newline at end of file diff --git a/src/test/helm/deployment_63_char_test.yaml b/src/test/helm/deployment_63_char_test.yaml index e6a14d3a5c38808a8fc4c3a25920dc4dedc6f093..5c5d86b1328b339cbe18215236055ddc7dfd0aaa 100644 --- a/src/test/helm/deployment_63_char_test.yaml +++ b/src/test/helm/deployment_63_char_test.yaml @@ -36,7 +36,7 @@ set: environment: dev sso.serverUrl: https://sso.company.local baseUrl: test.company.local - + imagePullSecret: image-pull-secret tests: - it: should fail on .Release.Namespace length longer than 63 characters release: diff --git a/src/test/helm/deployment_container_security_context_test.yaml b/src/test/helm/deployment_container_security_context_test.yaml index 205e5aacb363d70e1a2c56b539884f2b89f361c3..5d501b0257db20283c5c91fb5d47637d274ac2f4 100644 --- a/src/test/helm/deployment_container_security_context_test.yaml +++ b/src/test/helm/deployment_container_security_context_test.yaml @@ -35,6 +35,7 @@ set: environment: dev sso.serverUrl: https://sso.company.local baseUrl: test.company.local + imagePullSecret: image-pull-secret tests: - it: check default values asserts: diff --git a/src/test/helm/deployment_default_spec_test.yaml b/src/test/helm/deployment_default_spec_test.yaml index 5e2d17265c8784c968aa85f7a92650482815ab60..b06b33828954193f2bfc18dcb2911656ed74380b 100644 --- a/src/test/helm/deployment_default_spec_test.yaml +++ b/src/test/helm/deployment_default_spec_test.yaml @@ -36,6 +36,7 @@ set: baseUrl: test.sh.ozg-cloud.de sso: serverUrl: sso.test.sh.ozg-cloud.de + imagePullSecret: image-pull-secret tests: - it: check for some standard values asserts: diff --git a/src/test/helm/deployment_defaults_labels_test.yaml b/src/test/helm/deployment_defaults_labels_test.yaml index ea21aa38d22f88efda171b35fc4a35de23793f11..5cfcd5a5f66cb725df5ad7a89d623dcc0e764c89 100644 --- a/src/test/helm/deployment_defaults_labels_test.yaml +++ b/src/test/helm/deployment_defaults_labels_test.yaml @@ -36,6 +36,7 @@ set: sso: serverUrl: https://sso.company.local baseUrl: test.sh.ozg-cloud.local + imagePullSecret: image-pull-secret tests: - it: check default labels asserts: diff --git a/src/test/helm/deployment_defaults_topologySpreadConstraints_test.yaml b/src/test/helm/deployment_defaults_topologySpreadConstraints_test.yaml index 1071ef23a3be6854378fbc812c25cf467e6f16de..a71b7e6773585c848e690e3a22099871f4da5665 100644 --- a/src/test/helm/deployment_defaults_topologySpreadConstraints_test.yaml +++ b/src/test/helm/deployment_defaults_topologySpreadConstraints_test.yaml @@ -36,6 +36,7 @@ set: baseUrl: test.sh.ozg-cloud.de sso: serverUrl: sso.test.sh.ozg-cloud.de + imagePullSecret: image-pull-secret tests: - it: check default values asserts: diff --git a/src/test/helm/deployment_env_test.yaml b/src/test/helm/deployment_env_test.yaml index 50bd0bbee1e5e3e775c78c3f85395c6f27d1ddc0..c0acc80b8d90dd1c36534024f7fa19a1277d40a8 100644 --- a/src/test/helm/deployment_env_test.yaml +++ b/src/test/helm/deployment_env_test.yaml @@ -33,6 +33,7 @@ set: sso: serverUrl: sso.test.sh.ozg-cloud.de baseUrl: test.sh.ozg-cloud.de + imagePullSecret: image-pull-secret tests: - it: check customList set: diff --git a/src/test/helm/deployment_host_aliases_test.yaml b/src/test/helm/deployment_host_aliases_test.yaml index 35a67366a7a9a481f609f4d6c055b035b5da8f7b..0d704cc7fe5e7972d3ed5debcde32db567b72c77 100644 --- a/src/test/helm/deployment_host_aliases_test.yaml +++ b/src/test/helm/deployment_host_aliases_test.yaml @@ -36,6 +36,7 @@ set: sso: serverUrl: sso.test.sh.ozg-cloud.de baseUrl: test.sh.ozg-cloud.de + imagePullSecret: image-pull-secret tests: - it: should not set hostAliases asserts: diff --git a/src/test/helm/deployment_imagepull_secret_test.yaml b/src/test/helm/deployment_imagepull_secret_test.yaml index 557926dee620da96a52f1595cbe8a7d68420ec4e..196a5f4d0baf953159a6f0acfb1ae42589838312 100644 --- a/src/test/helm/deployment_imagepull_secret_test.yaml +++ b/src/test/helm/deployment_imagepull_secret_test.yaml @@ -36,16 +36,16 @@ set: sso: serverUrl: sso.test.sh.ozg-cloud.de baseUrl: test.sh.ozg-cloud.de + tests: - - it: should use default imagePull secret - asserts: - - equal: - path: spec.template.spec.imagePullSecrets[0].name - value: user-manager-image-pull-secret - it: should set the imagePull secret - set: + set: imagePullSecret: image-pull-secret asserts: - equal: path: spec.template.spec.imagePullSecrets[0].name - value: image-pull-secret \ No newline at end of file + value: image-pull-secret + - it: should fail if the imagePull secret not set + asserts: + - failedTemplate: + errorMessage: imagePullSecret must be set \ No newline at end of file diff --git a/src/test/helm/deployment_keycloak_values_test.yaml b/src/test/helm/deployment_keycloak_values_env_test.yaml similarity index 98% rename from src/test/helm/deployment_keycloak_values_test.yaml rename to src/test/helm/deployment_keycloak_values_env_test.yaml index b458a4a1571422fdc8bb5757731f3430682edf01..f9579ff7fcc9a3f45b72fa1af47f2fd90e8e30f2 100644 --- a/src/test/helm/deployment_keycloak_values_test.yaml +++ b/src/test/helm/deployment_keycloak_values_env_test.yaml @@ -22,7 +22,7 @@ # unter der Lizenz sind dem Lizenztext zu entnehmen. # -suite: test deployment +suite: test deployment kc values release: name: user-manager templates: @@ -35,6 +35,7 @@ set: sso: serverUrl: https://sso.test.by.ozg-cloud.local baseUrl: test.company.local + imagePullSecret: image-pull-secret tests: - it: validate keycloak configuration values asserts: diff --git a/src/test/helm/deployment_mongodb_passwort_secretref_test.yaml b/src/test/helm/deployment_mongodb_passwort_secretref_test.yaml index 5398f844fced5c2a7f48fd3b590082129b17e92a..b717977cefc915a7a49b876049acfa0e91e6df52 100644 --- a/src/test/helm/deployment_mongodb_passwort_secretref_test.yaml +++ b/src/test/helm/deployment_mongodb_passwort_secretref_test.yaml @@ -22,7 +22,7 @@ # unter der Lizenz sind dem Lizenztext zu entnehmen. # -suite: test deployment +suite: test deployment mongodb psw secretref release: name: user-manager templates: @@ -34,11 +34,11 @@ set: environment: dev sso.serverUrl: https://sso.company.local baseUrl: test.company.local + imagePullSecret: image-pull-secret tests: - it: should reference mongodb connection service for user-manager set: database.secretName: pluto-database-admin-user-manager-database-user - template: deployment.yaml release: namespace: sh-helm-test asserts: @@ -52,7 +52,6 @@ tests: name: pluto-database-admin-user-manager-database-user optional: false - it: check default mongodb connection service for user-manager - template: deployment.yaml release: namespace: sh-helm-test asserts: diff --git a/src/test/helm/deployment_optional_trust_store_test.yaml b/src/test/helm/deployment_optional_trust_store_test.yaml index 6944e3d12a5b294131790ba9768fd4225bdfce08..056003a511e08cf064e696fccde61fabc81dd3d0 100644 --- a/src/test/helm/deployment_optional_trust_store_test.yaml +++ b/src/test/helm/deployment_optional_trust_store_test.yaml @@ -33,6 +33,7 @@ set: sso: serverUrl: sso.test.sh.ozg-cloud.de baseUrl: test.sh.ozg-cloud.de + imagePullSecret: image-pull-secret tests: - it: check without truststore asserts: diff --git a/src/test/helm/deployment_probes_test.yaml b/src/test/helm/deployment_probes_test.yaml index 16ea20423dde663ea04deaaae675ceec08dfaea6..b0b21391ef3675e497828239825c412782eeaa6b 100644 --- a/src/test/helm/deployment_probes_test.yaml +++ b/src/test/helm/deployment_probes_test.yaml @@ -36,6 +36,7 @@ set: sso: serverUrl: https://sso.company.local baseUrl: test.by.company.local + imagePullSecret: image-pull-secret tests: - it: livenessProbe should be disabled by default asserts: diff --git a/src/test/helm/deployment_resources_test.yaml b/src/test/helm/deployment_resources_test.yaml index ca06a606bbdf1be7beae8d9dbf991c6d4df072e9..0cbca6c0634829036ed85d55600563c56c6c98ba 100644 --- a/src/test/helm/deployment_resources_test.yaml +++ b/src/test/helm/deployment_resources_test.yaml @@ -35,6 +35,7 @@ set: sso: serverUrl: sso.test.sh.ozg-cloud.de baseUrl: test.sh.ozg-cloud.de + imagePullSecret: image-pull-secret tests: - it: test resources set: diff --git a/src/test/helm/deployment_service_account_test.yaml b/src/test/helm/deployment_service_account_test.yaml index 92b60bc0a21c4aa83d588999fc75560d7d9eaf38..75a15ba03eff0a01f9c3568c7ef2d9a0428c7ce0 100644 --- a/src/test/helm/deployment_service_account_test.yaml +++ b/src/test/helm/deployment_service_account_test.yaml @@ -36,6 +36,7 @@ set: sso: serverUrl: sso.test.sh.ozg-cloud.de baseUrl: test.sh.ozg-cloud.de + imagePullSecret: image-pull-secret tests: - it: should use service account with default name diff --git a/src/test/helm/deployment_url_value_test.yaml b/src/test/helm/deployment_url_value_test.yaml index 49a89498d0844bf7ff414088a9aa44f0808f228c..981fe2a4ef21f71a6f658730a5fa25f43c866a5a 100644 --- a/src/test/helm/deployment_url_value_test.yaml +++ b/src/test/helm/deployment_url_value_test.yaml @@ -34,9 +34,9 @@ set: environment: dev sso.serverUrl: https://sso.company.local baseUrl: test.company.local + imagePullSecret: image-pull-secret tests: - it: validate keycloak configuration values - template: deployment.yaml release: namespace: sh-name-dev asserts: @@ -47,7 +47,6 @@ tests: value: https://helm-user-manager.test.company.local - it: set baseDomain for ozgcloud_user_manager_url - template: deployment.yaml set: baseDomain: helm-usm.test.company.local asserts: diff --git a/src/test/helm/deplyoment_cert_bindings_test.yaml b/src/test/helm/deplyoment_cert_bindings_test.yaml index 3fec0d1b00b5d5750bfb97bb558de92287837d98..4ac96535cd8c1817d7f1d165d2a5d5c33d661bc8 100644 --- a/src/test/helm/deplyoment_cert_bindings_test.yaml +++ b/src/test/helm/deplyoment_cert_bindings_test.yaml @@ -36,6 +36,7 @@ set: baseUrl: test.sh.ozg-cloud.de sso: serverUrl: sso.test.sh.ozg-cloud.de + imagePullSecret: image-pull-secret tests: - it: should mount volumes for user-manager root ca asserts: diff --git a/src/test/helm/deyploment_general_value_and_default_spec_test.yaml b/src/test/helm/deyploment_general_value_and_default_spec_test.yaml index 173b04d8a0b81bba2c5db1fbaf5173b410489d33..c412536fdeef909e209fec2a62cd1924d1e3d4c4 100644 --- a/src/test/helm/deyploment_general_value_and_default_spec_test.yaml +++ b/src/test/helm/deyploment_general_value_and_default_spec_test.yaml @@ -36,6 +36,7 @@ set: baseUrl: test.sh.ozg-cloud.de sso: serverUrl: sso.test.sh.ozg-cloud.de + imagePullSecret: image-pull-secret tests: - it: should have correct apiVersion diff --git a/src/test/helm/imagepull_secret_test.yaml b/src/test/helm/imagepull_secret_test.yaml deleted file mode 100644 index 80631de80e914cb5c9516674525efa367c191b83..0000000000000000000000000000000000000000 --- a/src/test/helm/imagepull_secret_test.yaml +++ /dev/null @@ -1,59 +0,0 @@ -# -# Copyright (C) 2022 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: test image pull secret -templates: - - templates/image_pull_secret.yaml -release: - name: user-manager - namespace: helm-test -tests: - - it: should match basic data - set: - imageCredentials: - registry: docker.ozg-sh.de - username: test - password: test1234 - email: webmaster@ozg-sh.de - asserts: - - hasDocuments: - count: 1 - - containsDocument: - kind: Secret - apiVersion: v1 - - equal: - path: metadata.name - value: user-manager-image-pull-secret - - equal: - path: metadata.namespace - value: helm-test - - isNotNullOrEmpty: - path: data[".dockerconfigjson"] - - - it: should not create image pull secret - set: - imagePullSecret: "image-pull-secret" - asserts: - - hasDocuments: - count: 0 \ No newline at end of file diff --git a/src/test/linter-values.yaml b/src/test/linter-values.yaml index 90be37129692fc2427cdf559da3139282d7fd2c1..1aa9fbc048e7c6ecc2a747d5e32856e65d044f18 100644 --- a/src/test/linter-values.yaml +++ b/src/test/linter-values.yaml @@ -38,4 +38,4 @@ sso: networkPolicy: ssoPublicIp: 51.89.117.53/32 dnsServerNamespace: test-dns-namespace - \ No newline at end of file +imagePullSecret: image-pull-secret