Skip to content

Commit 63e223a

Browse files
committed
Add ad-user-info test suite that I apparently forgot to commit before
Disabled for now, since it still requires some manual setup, but at least it's a starting point...
1 parent 74b821a commit 63e223a

12 files changed

+252
-0
lines changed
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
apiVersion: v1
3+
kind: LimitRange
4+
metadata:
5+
name: limit-request-ratio
6+
spec:
7+
limits:
8+
- type: "Container"
9+
maxLimitRequestRatio:
10+
cpu: 5
11+
memory: 1
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{% if test_scenario['values']['openshift'] == 'true' %}
2+
# see https://github.com/stackabletech/issues/issues/566
3+
---
4+
apiVersion: kuttl.dev/v1beta1
5+
kind: TestStep
6+
commands:
7+
- script: kubectl patch namespace $NAMESPACE -p '{"metadata":{"labels":{"pod-security.kubernetes.io/enforce":"privileged"}}}'
8+
timeout: 120
9+
{% endif %}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
apiVersion: kuttl.dev/v1beta1
3+
kind: TestAssert
4+
{% if lookup('env', 'VECTOR_AGGREGATOR') %}
5+
---
6+
apiVersion: v1
7+
kind: ConfigMap
8+
metadata:
9+
name: vector-aggregator-discovery
10+
{% endif %}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{% if lookup('env', 'VECTOR_AGGREGATOR') %}
2+
---
3+
apiVersion: v1
4+
kind: ConfigMap
5+
metadata:
6+
name: vector-aggregator-discovery
7+
data:
8+
ADDRESS: {{ lookup('env', 'VECTOR_AGGREGATOR') }}
9+
{% endif %}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
apiVersion: kuttl.dev/v1beta1
3+
kind: TestAssert
4+
metadata:
5+
name: install-opa
6+
timeout: 300
7+
commands:
8+
- script: kubectl -n $NAMESPACE wait --for=condition=available opaclusters.opa.stackable.tech/test-opa --timeout 301s
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
---
2+
apiVersion: kuttl.dev/v1beta1
3+
kind: TestStep
4+
commands:
5+
- script: |
6+
kubectl apply -n $NAMESPACE -f - <<EOF
7+
---
8+
apiVersion: v1
9+
kind: ConfigMap
10+
metadata:
11+
name: test
12+
labels:
13+
opa.stackable.tech/bundle: "true"
14+
data:
15+
test.rego: |
16+
package test
17+
18+
import data.stackable.opa.userinfo.v1 as userinfo
19+
20+
currentUserInfoByUsername := userinfo.userInfoByUsername(input.username)
21+
currentUserInfoById := userinfo.userInfoById(input.id)
22+
---
23+
apiVersion: opa.stackable.tech/v1alpha1
24+
kind: OpaCluster
25+
metadata:
26+
name: test-opa
27+
spec:
28+
image:
29+
{% if test_scenario['values']['opa-latest'].find(",") > 0 %}
30+
custom: "{{ test_scenario['values']['opa-latest'].split(',')[1] }}"
31+
productVersion: "{{ test_scenario['values']['opa-latest'].split(',')[0] }}"
32+
{% else %}
33+
productVersion: "{{ test_scenario['values']['opa-latest'] }}"
34+
{% endif %}
35+
pullPolicy: IfNotPresent
36+
clusterConfig:
37+
userInfo:
38+
backend:
39+
experimentalActiveDirectory:
40+
ldapServer: sble-addc.sble.test
41+
baseDistinguishedName: DC=sble,DC=test
42+
customAttributeMappings:
43+
country: c
44+
kerberosSecretClassName: kerberos-ad
45+
tls:
46+
verification:
47+
server:
48+
caCert:
49+
secretClass: tls-ad
50+
cache: # optional, enabled by default
51+
entryTimeToLive: 60s # optional, defaults to 60s
52+
{% if lookup('env', 'VECTOR_AGGREGATOR') %}
53+
vectorAggregatorConfigMapName: vector-aggregator-discovery
54+
{% endif %}
55+
servers:
56+
config:
57+
logging:
58+
enableVectorAgent: {{ lookup('env', 'VECTOR_AGGREGATOR') | length > 0 }}
59+
podOverrides:
60+
spec:
61+
volumes:
62+
- name: kerberos
63+
ephemeral:
64+
volumeClaimTemplate:
65+
metadata:
66+
annotations:
67+
secrets.stackable.tech/scope: service=opa
68+
roleGroups:
69+
default: {}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
---
2+
apiVersion: kuttl.dev/v1beta1
3+
kind: TestAssert
4+
metadata:
5+
name: test-regorule
6+
timeout: 300
7+
---
8+
apiVersion: apps/v1
9+
kind: StatefulSet
10+
metadata:
11+
name: test-regorule
12+
status:
13+
readyReplicas: 1
14+
replicas: 1
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
---
2+
apiVersion: apps/v1
3+
kind: StatefulSet
4+
metadata:
5+
name: test-regorule
6+
labels:
7+
app: test-regorule
8+
spec:
9+
replicas: 1
10+
selector:
11+
matchLabels:
12+
app: test-regorule
13+
template:
14+
metadata:
15+
labels:
16+
app: test-regorule
17+
spec:
18+
containers:
19+
- name: test-regorule
20+
image: docker.stackable.tech/stackable/testing-tools:0.2.0-stackable0.0.0-dev
21+
stdin: true
22+
tty: true
23+
resources:
24+
requests:
25+
memory: "128Mi"
26+
cpu: "512m"
27+
limits:
28+
memory: "128Mi"
29+
cpu: "1"
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
apiVersion: kuttl.dev/v1beta1
3+
kind: TestAssert
4+
metadata:
5+
name: test-regorule
6+
commands:
7+
- script: kubectl exec -n $NAMESPACE test-regorule-0 -- python /tmp/test-regorule.py -u 'http://test-opa-server-default:8081/v1/data/test'
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
apiVersion: kuttl.dev/v1beta1
3+
kind: TestStep
4+
commands:
5+
- script: kubectl cp -n $NAMESPACE ./test-regorule.py test-regorule-0:/tmp

0 commit comments

Comments
 (0)