mirror of
https://github.com/outbackdingo/cozystack.git
synced 2026-01-28 18:18:41 +00:00
Compare commits
1 Commits
release-0.
...
(tests)--a
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f785f3eae5 |
@@ -26,8 +26,8 @@
|
||||
}
|
||||
|
||||
@test "Clean previous VMs" {
|
||||
kill $(cat srv1/qemu.pid srv2/qemu.pid srv3/qemu.pid 2>/dev/null) 2>/dev/null || true
|
||||
rm -rf srv1 srv2 srv3
|
||||
kill $(cat srv1/qemu.pid srv2/qemu.pid srv3/qemu.pid srv4/qemu.pid 2>/dev/null) 2>/dev/null || true
|
||||
rm -rf srv1 srv2 srv3 srv4
|
||||
}
|
||||
|
||||
@test "Prepare networking and masquerading" {
|
||||
@@ -42,7 +42,7 @@
|
||||
}
|
||||
|
||||
@test "Prepare cloud‑init drive for VMs" {
|
||||
mkdir -p srv1 srv2 srv3
|
||||
mkdir -p srv1 srv2 srv3 srv4
|
||||
|
||||
# Generate cloud‑init ISOs
|
||||
for i in 1 2 3; do
|
||||
@@ -70,6 +70,39 @@ EOF
|
||||
-volid cidata -rational-rock -joliet \
|
||||
user-data meta-data network-config )
|
||||
done
|
||||
|
||||
cat > "srv4/meta-data" <<EOT
|
||||
hostname: srv4
|
||||
instance-id: srv4
|
||||
local-hostname: srv4
|
||||
EOT
|
||||
|
||||
cat > "srv4/user-data" <<EOT
|
||||
#cloud-config
|
||||
password: mysecret
|
||||
chpasswd: { expire: False }
|
||||
ssh_pwauth: True
|
||||
EOT
|
||||
|
||||
cat > "srv4/network-config" <<EOT
|
||||
version: 2
|
||||
ethernets:
|
||||
eth0:
|
||||
dhcp4: false
|
||||
addresses:
|
||||
- "192.168.123.14/26"
|
||||
gateway4: "192.168.123.1"
|
||||
nameservers:
|
||||
search: [cluster.local]
|
||||
addresses: [8.8.8.8]
|
||||
EOT
|
||||
|
||||
cd srv4 && genisoimage \
|
||||
-output seed.img \
|
||||
-volid cidata -rational-rock -joliet \
|
||||
user-data meta-data network-config
|
||||
cd ..
|
||||
|
||||
}
|
||||
|
||||
@test "Use Talos NoCloud image from assets" {
|
||||
@@ -84,6 +117,12 @@ EOF
|
||||
}
|
||||
|
||||
@test "Prepare VM disks" {
|
||||
|
||||
wget https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img -O ubuntu.img
|
||||
qemu-img convert -f qcow2 -O raw ubuntu.img srv4/system.img
|
||||
qemu-img resize srv4/system.img 20G
|
||||
qemu-img create srv4/data.img 100G
|
||||
|
||||
for i in 1 2 3; do
|
||||
cp nocloud-amd64.raw srv${i}/system.img
|
||||
qemu-img resize srv${i}/system.img 50G
|
||||
@@ -92,7 +131,7 @@ EOF
|
||||
}
|
||||
|
||||
@test "Create tap devices" {
|
||||
for i in 1 2 3; do
|
||||
for i in 1 2 3 4; do
|
||||
ip link del cozy-srv${i} 2>/dev/null || true
|
||||
ip tuntap add dev cozy-srv${i} mode tap
|
||||
ip link set cozy-srv${i} up
|
||||
@@ -101,7 +140,7 @@ EOF
|
||||
}
|
||||
|
||||
@test "Boot QEMU VMs" {
|
||||
for i in 1 2 3; do
|
||||
for i in 1 2 3 4; do
|
||||
qemu-system-x86_64 -machine type=pc,accel=kvm -cpu host -smp 8 -m 16384 \
|
||||
-device virtio-net,netdev=net0,mac=52:54:00:12:34:5${i} \
|
||||
-netdev tap,id=net0,ifname=cozy-srv${i},script=no,downscript=no \
|
||||
@@ -345,6 +384,7 @@ EOF
|
||||
}
|
||||
|
||||
@test "Configure Tenant and wait for applications" {
|
||||
return 0
|
||||
# Patch root tenant and wait for its releases
|
||||
kubectl patch tenants/root -n tenant-root --type merge -p '{"spec":{"host":"example.org","ingress":true,"monitoring":true,"etcd":true,"isolated":true}}'
|
||||
|
||||
@@ -384,6 +424,7 @@ EOF
|
||||
}
|
||||
|
||||
@test "Keycloak OIDC stack is healthy" {
|
||||
return 0
|
||||
kubectl patch configmap/cozystack -n cozy-system --type merge -p '{"data":{"oidc-enabled":"true"}}'
|
||||
|
||||
timeout 120 sh -ec 'until kubectl get hr -n cozy-keycloak keycloak keycloak-configure keycloak-operator >/dev/null 2>&1; do sleep 1; done'
|
||||
|
||||
@@ -2,7 +2,7 @@ NAMESPACE=cozy-e2e-tests
|
||||
NAME := sandbox
|
||||
CLEAN := 1
|
||||
TESTING_APPS := $(shell find ../../apps -maxdepth 1 -mindepth 1 -type d | awk -F/ '{print $$NF}')
|
||||
SANDBOX_NAME := cozy-e2e-sandbox-$(shell echo "$$(hostname):$$(pwd)" | sha256sum | cut -c -6)
|
||||
SANDBOX_NAME := cozy-e2e-sandbox-airgapped
|
||||
|
||||
ROOT_DIR = $(dir $(abspath $(firstword $(MAKEFILE_LIST))/../../..))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user