summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml64
1 files changed, 46 insertions, 18 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 5f6030a..af85d5c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -16,7 +16,27 @@ codespell:
- apt-get --no-install-recommends --yes install codespell
- codespell debvm-*
-simpletest:
+.test_script:
+ script:
+ - timeout 120s ./debvm-run -s 2222 &
+ - |
+ timeout=5
+ sshopt="-o StrictHostKeyChecking=no $(if test "$RELEASE" = jessie; then echo -o PubkeyAcceptedKeyTypes=+ssh-rsa; fi)"
+ ts=$(sleepenh 0 || [ $? -eq 1 ])
+ for i in $(seq 30); do
+ rv=0
+ ssh $sshopt -o ConnectTimeout="$timeout" -i ~/.ssh/id -p 2222 root@localhost echo success || rv=$?
+ test $rv -eq 0 && break
+ ts=$(sleepenh "$ts" "$timeout" || [ $? -eq 1 ]);
+ if test $i -eq 30; then
+ echo "timeout reached" >&2
+ exit 1
+ fi
+ done
+ - ssh $sshopt -i ~/.ssh/id -p 2222 root@localhost poweroff
+
+release_test:
+ extends: .test_script
stage: test
parallel:
matrix:
@@ -26,24 +46,32 @@ simpletest:
- bullseye
- buster
- stretch
- script:
+ - jessie
+ before_script:
- apt-get update
- apt-get dist-upgrade --yes
- - apt-get --no-install-recommends --yes install e2fsprogs genext2fs mmdebstrap openssh-client qemu-kvm sleepenh
+ - apt-get --no-install-recommends --yes install e2fsprogs genext2fs mmdebstrap openssh-client sleepenh qemu-kvm
- ssh-keygen -f ~/.ssh/id -N ''
- - ./debvm-create -k ~/.ssh/id.pub -r $RELEASE
- - timeout 120s ./debvm-run -s 2222 &
+ - ./debvm-create -k ~/.ssh/id.pub
+
+arch_test:
+ extends: .test_script
+ stage: test
+ parallel:
+ matrix:
+ - ARCHITECTURE:
+ - arm64
+ - armhf
+ - i386
+ - ppc64el
+ - s390x
+ before_script:
- |
- timeout=5
- ts=$(sleepenh 0 || [ $? -eq 1 ])
- for i in $(seq 10); do
- rv=0
- ssh -o StrictHostKeyChecking=no -o ConnectTimeout="$timeout" -i ~/.ssh/id -p 2222 root@localhost echo success || rv=$?
- test $rv -eq 0 && break
- ts=$(sleepenh "$ts" "$timeout" || [ $? -eq 1 ]);
- if test $i -eq 10; then
- echo "timeout reached" >&2
- exit 1
- fi
- done
- - ssh -o StrictHostKeyChecking=no -i ~/.ssh/id -p 2222 root@localhost poweroff
+ if [ ! -e /proc/sys/fs/binfmt_misc/status ]; then
+ mount -t binfmt_misc binfmt_misc /proc/sys/fs/binfmt_misc
+ fi
+ - apt-get update
+ - apt-get dist-upgrade --yes
+ - apt-get --no-install-recommends --yes install e2fsprogs genext2fs mmdebstrap openssh-client sleepenh qemu-system binfmt-support arch-test qemu-user-static
+ - ssh-keygen -f ~/.ssh/id -N ''
+ - ./debvm-create -k ~/.ssh/id.pub -a $ARCHITECTURE