]> xenbits.xensource.com Git - people/royger/xen.git/commitdiff
automation: add qemu smoke test
authorWei Liu <wei.liu2@citrix.com>
Mon, 19 Nov 2018 16:32:15 +0000 (16:32 +0000)
committerWei Liu <wei.liu2@citrix.com>
Tue, 20 Nov 2018 18:15:46 +0000 (18:15 +0000)
This patch introduces a new test stage into the pipeline and provides
a simple QEMU based smoke test.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Doug Goldstein <cardoe@cardoe.com>
.gitlab-ci.yml
automation/scripts/qemu-smoke-x86-64.sh [new file with mode: 0755]

index a1672a9a916430a8960db76946e6819db8366ba2..b3ca779e215c19ede8fd29a1cbab445e424a2008 100644 (file)
@@ -1,5 +1,6 @@
 stages:
   - build
+  - test
 
 .build-tmpl: &build
   stage: build
@@ -379,3 +380,22 @@ debian-unstable-gcc-debug-arm64-randconfig:
   variables:
     CONTAINER: debian:unstable-arm64v8
     RANDCONFIG: y
+
+
+# Test jobs
+qemu-smoke-x86-64:
+  stage: test
+  image: registry.gitlab.com/xen-project/xen/${CONTAINER}
+  variables:
+    CONTAINER: debian:stretch
+  script:
+    - ./automation/scripts/qemu-smoke-x86-64.sh 2>&1 | tee qemu-smoke-x86-64.log
+  artifacts:
+    paths:
+      - smoke.serial
+      - '*.log'
+    when: always
+  dependencies:
+    - debian-stretch-gcc-debug
+  tags:
+    - x86_64
diff --git a/automation/scripts/qemu-smoke-x86-64.sh b/automation/scripts/qemu-smoke-x86-64.sh
new file mode 100755 (executable)
index 0000000..7dc2c85
--- /dev/null
@@ -0,0 +1,23 @@
+#!/bin/bash
+
+set -ex
+
+# Install QEMU
+export DEBIAN_FRONTENT=noninteractive
+apt-get -qy update
+apt-get -qy install qemu-system-x86
+
+# Clone and build XTF
+git clone https://xenbits.xen.org/git-http/xtf.git
+cd xtf && make -j$(nproc) && cd -
+
+rm -f smoke.serial
+set +e
+timeout -k 1 10 \
+qemu-system-x86_64 -nographic -kernel binaries/xen \
+        -initrd xtf/tests/example/test-pv32pae-example \
+        -append 'loglvl=all com1=115200,,8n1 console=com1 noreboot' \
+        -m 512 -monitor none -serial file:smoke.serial
+set -e
+grep -q 'Test result: SUCCESS' smoke.serial || exit 1
+exit 0