Skip to content
Snippets Groups Projects
Commit 35e1fd0a authored by Stefan Voshage's avatar Stefan Voshage
Browse files

Dataport: Anpassung der Helm-Charts gemäß den Kyverno Richtlinien bei Dataport

Verbesserung der Testabdeckung
Entfernen der Dopplung in der _helpers.tpl
parent 01652185
No related branches found
No related tags found
No related merge requests found
...@@ -38,9 +38,7 @@ app.kubernetes.io/namespace: {{ include "app.namespace" . }} ...@@ -38,9 +38,7 @@ app.kubernetes.io/namespace: {{ include "app.namespace" . }}
{{- define "app.ssoRealm" -}} {{- define "app.ssoRealm" -}}
{{ printf "%s-%s-%s" (include "app.ozgcloudBundesland" .) ( include "app.ozgcloudBezeichner" . ) ( include "app.ozgcloudEnvironment" . ) | trunc 63 | trimSuffix "-" }} {{ printf "%s-%s-%s" (include "app.ozgcloudBundesland" .) ( include "app.ozgcloudBezeichner" . ) ( include "app.ozgcloudEnvironment" . ) | trunc 63 | trimSuffix "-" }}
{{- end -}} {{- end -}}
{{- define "app.serviceAccountName" -}}
{{ printf "%s" ( (.Values.serviceAccount).name | default "administration-service-account" ) }}
{{- end -}}
{{- define "app.ozgcloudBundesland" -}} {{- define "app.ozgcloudBundesland" -}}
{{- required "Bundesland muss angegeben sein" (.Values.ozgcloud).bundesland }} {{- required "Bundesland muss angegeben sein" (.Values.ozgcloud).bundesland }}
{{- end -}} {{- end -}}
......
#
# 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: deployment image pull secret
templates:
- templates/deployment.yaml
release:
name: administration
namespace: helm-test
set:
ozgcloud:
bundesland: sh
bezeichner: helm
sso:
serverUrl: https://sso.company.local
imagePullSecret: image-pull-secret
tests:
- it: check default values
asserts:
- equal:
path: spec.template.spec.containers[0].securityContext.allowPrivilegeEscalation
value: false
- equal:
path: spec.template.spec.containers[0].securityContext.privileged
value: false
- equal:
path: spec.template.spec.containers[0].securityContext.readOnlyRootFilesystem
value: false
- equal:
path: spec.template.spec.containers[0].securityContext.runAsNonRoot
value: true
- isNull:
path: spec.template.spec.containers[0].securityContext.runAsUser
- isNull:
path: spec.template.spec.containers[0].securityContext.runAsGroup
- isNull:
path: spec.template.spec.containers[0].securityContext.capabilities
- isNull:
path: spec.template.spec.securityContext.fsGroup
- it: check runAsUser
set:
securityContext.runAsUser: 1000
asserts:
- equal:
path: spec.template.spec.containers[0].securityContext.runAsUser
value: 1000
- it: check runAsGroup
set:
securityContext.runAsGroup: 1000
asserts:
- equal:
path: spec.template.spec.containers[0].securityContext.runAsGroup
value: 1000
- it: check fsGroup
set:
podSecurityContext.fsGroup: 1000
asserts:
- equal:
path: spec.template.spec.securityContext.fsGroup
value: 1000
- it: check capabilities
set:
securityContext:
capabilities:
drop:
- ALL
asserts:
- equal:
path: spec.template.spec.containers[0].securityContext.capabilities
value:
drop:
- ALL
\ No newline at end of file
#
# 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: deployment service account
templates:
- templates/deployment.yaml
release:
name: administration
namespace: helm-test
set:
ozgcloud:
bundesland: sh
bezeichner: helm
sso:
serverUrl: https://sso.company.local
imagePullSecret: image-pull-secret
tests:
- it: should use service account with default name
set:
serviceAccount:
create: true
asserts:
- equal:
path: spec.template.spec.serviceAccountName
value: administration-service-account
- it: should use service account with name
set:
serviceAccount:
create: true
name: helm-service-account
asserts:
- equal:
path: spec.template.spec.serviceAccountName
value: helm-service-account
- it: should use default service account
asserts:
- isNull:
path: spec.template.spec.serviceAccountName
\ No newline at end of file
...@@ -112,11 +112,9 @@ tests: ...@@ -112,11 +112,9 @@ tests:
- equal: - equal:
path: spec.template.spec.schedulerName path: spec.template.spec.schedulerName
value: "default-scheduler" value: "default-scheduler"
- isEmpty:
path: spec.template.spec.securityContext
- equal: - equal:
path: spec.template.spec.terminationGracePeriodSeconds path: spec.template.spec.terminationGracePeriodSeconds
value: 300000000 value: 30
- it: should have correct container configuration - it: should have correct container configuration
asserts: asserts:
- equal: - equal:
......
#
# 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 service account
release:
name: vorgang-manager
namespace: sh-helm-test
templates:
- templates/service_account.yaml
tests:
- it: should create service account with default name
set:
serviceAccount:
create: true
asserts:
- isKind:
of: ServiceAccount
- isAPIVersion:
of: v1
- equal:
path: metadata.name
value: administration-service-account
- equal:
path: metadata.namespace
value: sh-helm-test
- it: should create service account with name
set:
serviceAccount:
create: true
name: helm-service-account
asserts:
- isKind:
of: ServiceAccount
- equal:
path: metadata.name
value: helm-service-account
- equal:
path: metadata.namespace
value: sh-helm-test
- it: should not create service account
asserts:
- hasDocuments:
count: 0
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment