-
Notifications
You must be signed in to change notification settings - Fork 2
/
spread.yaml
68 lines (59 loc) · 1.99 KB
/
spread.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
---
project: nemos-images
path: /tmp/nemos
backends:
adhoc:
allocate: |
ARCH="$(echo ${SPREAD_SYSTEM} | rev | cut -f1 -d- | rev)"
VM_IMAGE="${HOME}/.spread/${SPREAD_BACKEND}/${SPREAD_SYSTEM}.qcow2"
PID_FILE="/tmp/${SPREAD_BACKEND}-${SPREAD_SYSTEM}.pid"
if [ ! -f "${VM_IMAGE}" ]; then
FATAL "File not found: ${VM_IMAGE}"
fi
# Might need a more reliable way to get a free port...
SSH_PORT=$((30000 + $RANDOM % 20000))
./run_qemu.sh -f "${VM_IMAGE}" -p "${PID_FILE}" -d \
-s "${SSH_PORT}" -t "$(($SSH_PORT + 1))" -a "${ARCH}" -o
# Try up to 5000 times to see if the SSH connection is available earlier
for i in $(seq 1 5000); do
if sshpass -p ${SPREAD_SYSTEM_PASSWORD} \
ssh -p ${SSH_PORT} -o ConnectTimeout=1 -o StrictHostKeyChecking=no \
-o UserKnownHostsFile=/dev/null \
${SPREAD_SYSTEM_USERNAME}@localhost /bin/true; then
break;
fi
done
ADDRESS 127.0.0.1:${SSH_PORT}
discard: |
kill -9 $(cat /tmp/${SPREAD_BACKEND}-${SPREAD_SYSTEM}.pid)
rm -f /tmp/${SPREAD_BACKEND}-${SPREAD_SYSTEM}.pid
systems:
- nemos-image-reference-lunar-amd64:
username: admin
password: linux
- nemos-image-minimal-lunar-amd64:
username: admin
password: linux
- nemos-image-reference-lunar-arm64:
username: admin
password: linux
- nemos-image-minimal-lunar-arm64:
username: admin
password: linux
- nemos-image-reference-mantic-amd64:
username: admin
password: linux
- nemos-image-minimal-mantic-amd64:
username: admin
password: linux
- nemos-image-reference-mantic-arm64:
username: admin
password: linux
- nemos-image-minimal-mantic-arm64:
username: admin
password: linux
suites:
tests/spread/:
summary: Integration tests
warn-timeout: 1h
kill-timeout: 2h