Skip to content
Snippets Groups Projects
Commit e6c1f0eb authored by OZGCloud's avatar OZGCloud
Browse files

OZG-3961 add rbac test

parent 55ddf616
No related branches found
No related tags found
No related merge requests found
......@@ -126,7 +126,7 @@ pipeline {
dir('src/main/helm') {
sh "helm lint -f ../../test/helm/linter_values.yaml"
sh "helm unittest --helm3 -f '../../test/helm/*.yaml' ."
sh "helm unittest --helm3 -f '../../test/helm/*.yaml' -f '../../test/helm/*/*.yaml' ."
sh "helm package --version=${HELM_CHART_VERSION} ."
......
......@@ -4,4 +4,4 @@ set -e
helm template ./src/main/helm/ -f src/test/helm/linter_values.yaml
helm lint -f src/test/helm/linter_values.yaml ./src/main/helm/
cd src/main/helm && helm unittest --helm3 -f '../../test/helm/*.yaml' .
\ No newline at end of file
cd src/main/helm && helm unittest --helm3 -f '../../test/helm/*/*.yaml' -f '../../test/helm/*.yaml' .
#
# 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: Keycloak admin secret rbac test
release:
name: ozg-operator
namespace: test-namespace
templates:
- templates/rbacs/keycloak_admin_secret_read.yaml
tests:
- it: test RoleBinding metadata
asserts:
- isKind:
of: RoleBinding
documentIndex: 0
- equal:
path: metadata.name
value: ozg-operator-keycloak-admin-secret-viewer-role-binding
documentIndex: 0
- equal:
path: metadata.namespace
value: keycloak
documentIndex: 0
- it: test RoleBinding subject
asserts:
- contains:
path: subjects
content:
kind: ServiceAccount
name: ozg-operator-serviceaccount
namespace: test-namespace
documentIndex: 0
- it: test RoleBinding roleRef
asserts:
- equal:
path: roleRef
value:
kind: Role
name: ozg-operator-keycloak-admin-secret-viewer-role
apiGroup: rbac.authorization.k8s.io
documentIndex: 0
- it: test Role metadata
asserts:
- isKind:
of: Role
documentIndex: 1
- equal:
path: metadata.name
value: ozg-operator-keycloak-admin-secret-viewer-role
documentIndex: 1
- equal:
path: metadata.namespace
value: keycloak
documentIndex: 1
- it: test RoleBinding rules
asserts:
- contains:
path: rules
content:
apiGroups:
- ""
resourceNames:
- keycloak-admin-secret
resources:
- secrets
verbs:
- get
documentIndex: 1
\ 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: Keycloak read rbac test
release:
name: ozg-operator
namespace: test-namespace
templates:
- templates/rbacs/keycloak_read.yaml
tests:
- it: test ClusterRoleBinding metadata
asserts:
- isKind:
of: ClusterRoleBinding
documentIndex: 0
- equal:
path: metadata.name
value: ozg-operator-keycloak-viewer-role-binding
documentIndex: 0
- it: test ClusterRoleBinding subject
asserts:
- contains:
path: subjects
content:
kind: ServiceAccount
name: ozg-operator-serviceaccount
namespace: test-namespace
documentIndex: 0
- it: test ClusterRoleBinding roleRef
asserts:
- equal:
path: roleRef
value:
kind: ClusterRole
name: ozg-operator-keycloak-viewer-role
apiGroup: rbac.authorization.k8s.io
documentIndex: 0
- it: test ClusterRole metadata
asserts:
- isKind:
of: ClusterRole
documentIndex: 1
- equal:
path: metadata.name
value: ozg-operator-keycloak-viewer-role
documentIndex: 1
- it: test ClusterRoleBinding rules
asserts:
- contains:
path: rules
content:
apiGroups:
- operator.ozgcloud.de
resources:
- ozgkeycloakusers
- ozgkeycloakusers/status
- ozgkeycloakusers/finalizers
- ozgkeycloakgroups
- ozgkeycloakgroups/status
- ozgkeycloakgroups/finalizers
- ozgkeycloakrealms
- ozgkeycloakrealms/status
- ozgkeycloakrealms/finalizers
- ozgkeycloakclients
- ozgkeycloakclients/status
- ozgkeycloakclients/finalizers
verbs:
- get
- list
- watch
documentIndex: 1
\ 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: Keycloak write rbac test
release:
name: ozg-operator
namespace: test-namespace
templates:
- templates/rbacs/keycloak_write.yaml
tests:
- it: test ClusterRoleBinding metadata
asserts:
- isKind:
of: ClusterRoleBinding
documentIndex: 0
- equal:
path: metadata.name
value: ozg-operator-keycloak-write-role-binding
documentIndex: 0
- it: test ClusterRoleBinding subject
asserts:
- contains:
path: subjects
content:
kind: ServiceAccount
name: ozg-operator-serviceaccount
namespace: test-namespace
documentIndex: 0
- it: test ClusterRoleBinding roleRef
asserts:
- equal:
path: roleRef
value:
kind: ClusterRole
name: ozg-operator-keycloak-write-role
apiGroup: rbac.authorization.k8s.io
documentIndex: 0
- it: test ClusterRole metadata
asserts:
- isKind:
of: ClusterRole
documentIndex: 1
- equal:
path: metadata.name
value: ozg-operator-keycloak-write-role
documentIndex: 1
- it: test ClusterRoleBinding rules
asserts:
- contains:
path: rules
content:
apiGroups:
- operator.ozgcloud.de
resources:
- ozgkeycloakusers
- ozgkeycloakusers/status
- ozgkeycloakusers/finalizers
- ozgkeycloakgroups
- ozgkeycloakgroups/status
- ozgkeycloakgroups/finalizers
- ozgkeycloakrealms
- ozgkeycloakrealms/status
- ozgkeycloakrealms/finalizers
- ozgkeycloakclients
- ozgkeycloakclients/status
- ozgkeycloakclients/finalizers
verbs:
- patch
- update
documentIndex: 1
\ 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: ServiceAccount test
release:
name: ozg-operator
namespace: test-namespace
templates:
- templates/rbacs/serviceaccount.yaml
tests:
- it: test metadata
asserts:
- isKind:
of: ServiceAccount
- equal:
path: metadata.name
value: ozg-operator-serviceaccount
- equal:
path: metadata.namespace
value: test-namespace
\ 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