add some more rbac tests.

This commit is contained in:
Stavros kois
2022-11-22 20:19:46 +02:00
parent aaba013d79
commit 3ba73201b6
2 changed files with 90 additions and 7 deletions

View File

@@ -14,6 +14,89 @@ tests:
- isKind:
of: Deployment
# TODO: check that these fails are valid...
- it: should fail with no apiGroups in rules
set:
rbac:
main:
enabled: true
rules:
- apiGroups: []
resources:
- something
verbs:
- something
asserts:
- failedTemplate:
errorMessage: <apiGroups> are required in RBAC rules.
- it: should fail with no resources in rules
set:
rbac:
main:
enabled: true
rules:
- apiGroups:
- something
resources: []
verbs:
- something
asserts:
- failedTemplate:
errorMessage: <resources> are required in RBAC rules.
- it: should fail with no verbs in rules
set:
rbac:
main:
enabled: true
rules:
- apiGroups:
- something
resources:
- something
verbs: []
asserts:
- failedTemplate:
errorMessage: <verbs> are required in RBAC rules.
- it: should fail with no kind in subjects
set:
rbac:
main:
enabled: true
subjects:
- kind: ""
asserts:
- failedTemplate:
errorMessage: <kind> is required in RBAC subjects.
- it: should fail with no name in subjects
set:
rbac:
main:
enabled: true
subjects:
- kind: something
name: ""
asserts:
- failedTemplate:
errorMessage: <name> is required in RBAC subjects.
- it: should fail with no apiGroup in subjects
set:
rbac:
main:
enabled: true
subjects:
- kind: something
name: something
apiGroup: ""
asserts:
- failedTemplate:
errorMessage: <apiGroup> is required in RBAC subjects.
- it: should pass with rbac account enabled (Role)
documentIndex: &roleDoc 0
set:

View File

@@ -48,18 +48,18 @@ metadata:
{{- end }}
{{- with $rbacValues.rules -}}
rules:
{{/* Make sure that still works with values like "" also with tpl */}}
{{/* TODO: Make sure that still works with values like "" also with tpl and on subjects*/}}
{{- range . }}
- apiGroups:
{{- range (required "<apiGroups> are required in RBAC rules" .apiGroups) }}
{{- range (required "<apiGroups> are required in RBAC rules." .apiGroups) }}
- {{ tpl . $root }}
{{- end }}
resources:
{{- range (required "<resources> are required in RBAC rules" .resources) }}
{{- range (required "<resources> are required in RBAC rules." .resources) }}
- {{ tpl . $root }}
{{- end }}
verbs:
{{- range (required "<verbs> are required in RBAC rules" .verbs) }}
{{- range (required "<verbs> are required in RBAC rules." .verbs) }}
- {{ tpl . $root }}
{{- end }}
{{- end }}
@@ -93,9 +93,9 @@ subjects:
namespace: {{ $root.Release.Namespace }}
{{- with $rbacValues.subjects -}}
{{- range . }}
- kind: {{ tpl (required "<kind> is required in RBAC subjects" .kind) $root }}
name: {{ tpl (required "<name> is required in RBAC subjects" .name) $root }}
apiGroup: {{ tpl (required "<apiGroup> is required in RBAC subjects" .apiGroup) $root }}
- kind: {{ tpl (required "<kind> is required in RBAC subjects." .kind) $root }}
name: {{ tpl (required "<name> is required in RBAC subjects." .name) $root }}
apiGroup: {{ tpl (required "<apiGroup> is required in RBAC subjects." .apiGroup) $root }}
{{- end }}
{{- end -}}
{{- end -}}