Skip to content

Commit 8202ea9

Browse files
committed
feat: e2e for vault with ibm power
Signed-off-by: Rajakumar Battula <rbattula@redhat.com>
1 parent 46a6f15 commit 8202ea9

2 files changed

Lines changed: 129 additions & 124 deletions

File tree

test/e2e/e2e_test.go

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -759,20 +759,20 @@ var _ = Describe("External Secrets Operator End-to-End test scenarios", Ordered,
759759

760760
AfterAll(func() {
761761
By("Cleaning up Vault namespace")
762-
safeDelete(exec.Command(
763-
"oc", "delete",
762+
safeDelete(ctx,
763+
"delete",
764764
"namespace", vaultNamespace,
765765
"--ignore-not-found",
766766
"--wait=true",
767-
))
767+
)
768768

769769
By("Cleaning up NetworkPolicy")
770-
safeDelete(exec.Command(
771-
"oc", "delete",
770+
safeDelete(ctx,
771+
"delete",
772772
"networkpolicy", "allow-to-vault-test",
773773
"-n", "external-secrets",
774774
"--ignore-not-found",
775-
))
775+
)
776776
})
777777

778778
It("should create secret mentioned in ExternalSecret using the referenced SecretStore", func() {
@@ -917,10 +917,10 @@ func setupVault(ctx context.Context, client *kubernetes.Clientset) (string, erro
917917

918918
initOut, err := utils.Run(initCmd)
919919
if err != nil {
920-
return "", fmt.Errorf("vault init failed: %w\n%s", err, string(initOut))
920+
return "", fmt.Errorf("vault init failed: %w", err)
921921
}
922922

923-
By(fmt.Sprintf("Vault init output:\n%s", string(initOut)))
923+
By("Vault initialized successfully")
924924

925925
// Step 2: Extract keys
926926
lines := strings.Split(string(initOut), "\n")
@@ -1062,7 +1062,12 @@ func createVaultTokenSecret(ctx context.Context, client *kubernetes.Clientset, t
10621062
return err
10631063
}
10641064

1065-
func safeDelete(cmd *exec.Cmd) {
1065+
func safeDelete(ctx context.Context, args ...string) {
1066+
ctxTimeout, cancel := context.WithTimeout(ctx, 2*time.Minute)
1067+
defer cancel()
1068+
1069+
cmd := exec.CommandContext(ctxTimeout, "oc", args...)
1070+
10661071
out, err := cmd.CombinedOutput()
10671072
if err != nil {
10681073
By(fmt.Sprintf("Cleanup error: %s", string(out)))

test/e2e/testdata/vault/vault.yaml

Lines changed: 115 additions & 115 deletions
Original file line numberDiff line numberDiff line change
@@ -1,115 +1,115 @@
1-
---
2-
apiVersion: v1
3-
kind: Namespace
4-
metadata:
5-
name: vault-test
6-
7-
---
8-
apiVersion: v1
9-
kind: ServiceAccount
10-
metadata:
11-
name: vault
12-
namespace: vault-test
13-
14-
---
15-
apiVersion: v1
16-
kind: ConfigMap
17-
metadata:
18-
name: vault-config
19-
namespace: vault-test
20-
data:
21-
vault.hcl: |
22-
ui = true
23-
24-
listener "tcp" {
25-
address = "0.0.0.0:8200"
26-
tls_disable = 1
27-
}
28-
29-
storage "file" {
30-
path = "/vault/data"
31-
}
32-
33-
disable_mlock = true
34-
35-
---
36-
apiVersion: apps/v1
37-
kind: Deployment
38-
metadata:
39-
name: vault
40-
namespace: vault-test
41-
spec:
42-
replicas: 1
43-
selector:
44-
matchLabels:
45-
app: vault
46-
template:
47-
metadata:
48-
labels:
49-
app: vault
50-
spec:
51-
serviceAccountName: vault
52-
securityContext:
53-
runAsNonRoot: true
54-
seccompProfile:
55-
type: RuntimeDefault
56-
containers:
57-
- name: vault
58-
image: icr.io/ppc64le-oss/vault-ppc64le:v1.14.8
59-
command:
60-
- vault
61-
args:
62-
- server
63-
- -config=/vault/config/vault.hcl
64-
env:
65-
- name: VAULT_API_ADDR
66-
value: http://vault.vault-test.svc.cluster.local:8200
67-
- name: VAULT_ADDR
68-
value: http://127.0.0.1:8200
69-
ports:
70-
- containerPort: 8200
71-
securityContext:
72-
allowPrivilegeEscalation: false
73-
capabilities:
74-
drop:
75-
- ALL
76-
resources:
77-
requests:
78-
cpu: 100m
79-
memory: 256Mi
80-
limits:
81-
cpu: 500m
82-
memory: 512Mi
83-
volumeMounts:
84-
- name: config
85-
mountPath: /vault/config
86-
- name: data
87-
mountPath: /vault/data
88-
readinessProbe:
89-
httpGet:
90-
path: /v1/sys/health?standbyok=true&sealedcode=204&uninitcode=204
91-
port: 8200
92-
initialDelaySeconds: 20
93-
periodSeconds: 5
94-
timeoutSeconds: 5
95-
failureThreshold: 10
96-
volumes:
97-
- name: config
98-
configMap:
99-
name: vault-config
100-
- name: data
101-
emptyDir: {}
102-
103-
---
104-
apiVersion: v1
105-
kind: Service
106-
metadata:
107-
name: vault
108-
namespace: vault-test
109-
spec:
110-
selector:
111-
app: vault
112-
ports:
113-
- name: http
114-
port: 8200
115-
targetPort: 8200
1+
---
2+
apiVersion: v1
3+
kind: Namespace
4+
metadata:
5+
name: vault-test
6+
7+
---
8+
apiVersion: v1
9+
kind: ServiceAccount
10+
metadata:
11+
name: vault
12+
namespace: vault-test
13+
14+
---
15+
apiVersion: v1
16+
kind: ConfigMap
17+
metadata:
18+
name: vault-config
19+
namespace: vault-test
20+
data:
21+
vault.hcl: |
22+
ui = true
23+
24+
listener "tcp" {
25+
address = "0.0.0.0:8200"
26+
tls_disable = 1
27+
}
28+
29+
storage "file" {
30+
path = "/vault/data"
31+
}
32+
33+
disable_mlock = true
34+
35+
---
36+
apiVersion: apps/v1
37+
kind: Deployment
38+
metadata:
39+
name: vault
40+
namespace: vault-test
41+
spec:
42+
replicas: 1
43+
selector:
44+
matchLabels:
45+
app: vault
46+
template:
47+
metadata:
48+
labels:
49+
app: vault
50+
spec:
51+
serviceAccountName: vault
52+
securityContext:
53+
runAsNonRoot: true
54+
seccompProfile:
55+
type: RuntimeDefault
56+
containers:
57+
- name: vault
58+
image: icr.io/ppc64le-oss/vault-ppc64le:v1.14.8
59+
command:
60+
- vault
61+
args:
62+
- server
63+
- -config=/vault/config/vault.hcl
64+
env:
65+
- name: VAULT_API_ADDR
66+
value: http://vault.vault-test.svc.cluster.local:8200
67+
- name: VAULT_ADDR
68+
value: http://127.0.0.1:8200
69+
ports:
70+
- containerPort: 8200
71+
securityContext:
72+
allowPrivilegeEscalation: false
73+
capabilities:
74+
drop:
75+
- ALL
76+
resources:
77+
requests:
78+
cpu: 100m
79+
memory: 256Mi
80+
limits:
81+
cpu: 500m
82+
memory: 512Mi
83+
volumeMounts:
84+
- name: config
85+
mountPath: /vault/config
86+
- name: data
87+
mountPath: /vault/data
88+
readinessProbe:
89+
httpGet:
90+
path: /v1/sys/health?standbyok=true&sealedcode=204&uninitcode=204
91+
port: 8200
92+
initialDelaySeconds: 20
93+
periodSeconds: 5
94+
timeoutSeconds: 5
95+
failureThreshold: 10
96+
volumes:
97+
- name: config
98+
configMap:
99+
name: vault-config
100+
- name: data
101+
emptyDir: {}
102+
103+
---
104+
apiVersion: v1
105+
kind: Service
106+
metadata:
107+
name: vault
108+
namespace: vault-test
109+
spec:
110+
selector:
111+
app: vault
112+
ports:
113+
- name: http
114+
port: 8200
115+
targetPort: 8200

0 commit comments

Comments
 (0)