Skip to content

Commit 0e7a78a

Browse files
fix script and move e2e tests
1 parent ed3befc commit 0e7a78a

File tree

6 files changed

+91
-5
lines changed

6 files changed

+91
-5
lines changed

.e2e/chainsaw-tests.yaml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,28 @@ spec:
2222
- my-virtual-namespace
2323
matchLabels:
2424
vcluster.loft.sh/label-vcluster-x-a172cedcae: example-app
25+
---
26+
apiVersion: chainsaw.kyverno.io/v1alpha1
27+
kind: Test
28+
metadata:
29+
name: pm-with-ns-selector
30+
spec:
31+
steps:
32+
- try:
33+
- assert:
34+
resource:
35+
apiVersion: monitoring.coreos.com/v1
36+
kind: PodMonitor
37+
metadata:
38+
name: pm-with-ns-selector-x-default-x-vcluster
39+
namespace: default
40+
spec:
41+
namespaceSelector: {}
42+
selector:
43+
matchExpressions:
44+
- key: vcluster.loft.sh/namespace
45+
operator: In
46+
values:
47+
- my-virtual-namespace
48+
matchLabels:
49+
vcluster.loft.sh/label-vcluster-x-a172cedcae: example-app

.e2e/vcluster-resources.yaml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,3 +15,19 @@ spec:
1515
app: example-app
1616
endpoints:
1717
- port: web
18+
---
19+
apiVersion: monitoring.coreos.com/v1
20+
kind: PodMonitor
21+
metadata:
22+
name: pm-with-ns-selector
23+
namespace: default
24+
labels:
25+
team: frontend
26+
spec:
27+
namespaceSelector:
28+
any: false
29+
matchNames:
30+
- my-virtual-namespace
31+
selector:
32+
matchLabels:
33+
app: example-app

v1/.e2e/scripts/init.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ while [ $res -ne 0 ] && [ $secondsWaited -lt $timeout ]; do
2020
echo "Waiting for CRDs to get created, sleep for 30 seconds..."
2121
sleep 30
2222
secondsWaited=$((secondsWaited + 30))
23-
vcluster connect vcluster -n default -- kubectl get servicemonitorr && vcluster connect vcluster -n default -- kubectl get podmonitor
23+
vcluster connect vcluster -n default -- kubectl get servicemonitor && vcluster connect vcluster -n default -- kubectl get podmonitor
2424
res=$?
2525
done
2626

v2/.e2e/scripts/init.sh

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
#!/bin/bash
2+
# Deploy CRDs and vcluster with the plugin, connect to vcluster and apply resources in resources folder for testing
3+
4+
PLUGIN_IMAGE=$1
5+
MYDIR=$(dirname $0)
6+
ROOT_DIR=$MYDIR/../../
7+
RESOURCES_FILE=$MYDIR/../../../.e2e/vcluster-resources.yaml
8+
9+
kubectl apply -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.70.0/example/prometheus-operator-crd-full/monitoring.coreos.com_podmonitors.yaml
10+
kubectl apply -f https://raw.githubusercontent.com/prometheus-operator/prometheus-operator/v0.70.0/example/prometheus-operator-crd-full/monitoring.coreos.com_servicemonitors.yaml
11+
helm upgrade --install --repo https://charts.loft.sh vcluster vcluster --version v0.20.0-beta.5 --values $MYDIR/vcluster-values.yaml --values $ROOT_DIR/plugin.yaml --set plugins.prometheus-operator-resources.image=$PLUGIN_IMAGE --wait
12+
13+
vcluster connect vcluster -n default -- kubectl get servicemonitor && vcluster connect vcluster -n default -- kubectl get podmonitor
14+
15+
res=$?
16+
secondsWaited=0
17+
timeout=300
18+
19+
while [ $res -ne 0 ] && [ $secondsWaited -lt $timeout ]; do
20+
echo "Waiting for CRDs to get created, sleep for 30 seconds..."
21+
sleep 30
22+
secondsWaited=$((secondsWaited + 30))
23+
vcluster connect vcluster -n default -- kubectl get servicemonitor && vcluster connect vcluster -n default -- kubectl get podmonitor
24+
res=$?
25+
done
26+
27+
if [ $res -ne 0 ]; then
28+
echo "Timed out waiting for CRDs to get created in vcluster"
29+
exit 1
30+
fi
31+
32+
cat $RESOURCES_FILE | vcluster connect vcluster -n default -- kubectl -n default apply -f -

v2/.e2e/scripts/vcluster-values.yaml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
controlPlane:
2+
advanced:
3+
serviceAccount:
4+
enabled: false
5+
name: default
6+
statefulSet:
7+
probes:
8+
livenessProbe:
9+
enabled: false
10+
readinessProbe:
11+
enabled: false
12+
distro:
13+
k3s:
14+
enabled: true
15+
rbac:
16+
clusterRole:
17+
enabled: true

v2/devspace.yaml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,6 @@ deployments:
2525
repo: https://charts.loft.sh
2626
version: v0.20.0-beta.5
2727
values:
28-
experimental:
29-
syncSettings:
30-
syncLabels:
31-
- app
3228
controlPlane:
3329
advanced:
3430
serviceAccount:

0 commit comments

Comments
 (0)