gitlab CI: run the meson script for the VMs as well
authorPeter Hutterer <peter.hutterer@who-t.net>
Thu, 28 Nov 2019 03:02:48 +0000 (13:02 +1000)
committerBenjamin Tissoires <benjamin.tissoires@gmail.com>
Thu, 28 Nov 2019 13:36:00 +0000 (14:36 +0100)
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
.gitlab-ci.yml
.gitlab-ci/meson-build.sh

index faa93ad..9585a3d 100644 (file)
@@ -491,13 +491,13 @@ freebsd:11.2@container-clean:
     - *check_tainted
 
     - "scp -P 5555 -r $PWD localhost:"
-    - ssh localhost -p 5555 rm -rf $CI_PROJECT_NAME/"$MESON_BUILDDIR"
-    - ssh localhost -p 5555 "cd $CI_PROJECT_NAME ; meson \"$MESON_BUILDDIR\" $MESON_ARGS"
-    - ssh localhost -p 5555 "cd $CI_PROJECT_NAME ; meson configure \"$MESON_BUILDDIR\" "
-    - ssh localhost -p 5555 "cd $CI_PROJECT_NAME ; ninja -C \"$MESON_BUILDDIR\" $NINJA_ARGS"
-    - echo "meson test -C \"$MESON_BUILDDIR\" $MESON_TEST_ARGS $SUITES --print-errorlogs"
-    - ssh localhost -p 5555 "cd $CI_PROJECT_NAME ; meson test -C \"$MESON_BUILDDIR\" $MESON_TEST_ARGS --print-errorlogs $SUITES" && touch .success || true
-
+    - echo "CI_JOB_ID=\"$CI_JOB_ID\"" > sshenv
+    - echo "CI_JOB_NAME=\"$CI_JOB_NAME\"" >> sshenv
+    - echo "MESON_BUILDDIR=\"$MESON_BUILDDIR\"" >> sshenv
+    - echo "MESON_TEST_ARGS=\"$MESON_TEST_ARGS $SUITES\"" >> sshenv
+    - echo "NINJA_ARGS=\"$NINJA_ARGS\"" >> sshenv
+    - "scp -P 5555 sshenv localhost:~/$CI_PROJECT_NAME/.meson_environment"
+    - ssh localhost -p 5555 "cd $CI_PROJECT_NAME ; .gitlab-ci/meson-build.sh" && touch .success || true
     # no matter the results of the tests, we want to fetch the logs
     - scp -P 5555 -r localhost:$CI_PROJECT_NAME/$MESON_BUILDDIR .
 
@@ -523,6 +523,8 @@ freebsd:11.2@container-clean:
     paths:
       - $MESON_BUILDDIR/meson-logs
       - console.out
+    reports:
+      junit: $MESON_BUILDDIR/junit-*.xml
 
   allow_failure: true
   needs: ['fedora:30@qemu-prep']
index 1b471aa..a861573 100755 (executable)
@@ -1,5 +1,9 @@
 #!/bin/bash
 
+if [[ -f .meson_environment ]]; then
+       . .meson_environment
+fi
+
 if [[ -z "$MESON_BUILDDIR" ]]; then
        echo "\$MESON_BUILDDIR undefined."
        exit 1
@@ -37,7 +41,7 @@ fi
 
 # we still want to generate the reports, even if meson test fails
 set +e
-meson test -C "$MESON_BUILDDIR" $MESON_TEST_ARGS
+meson test -C "$MESON_BUILDDIR" $MESON_TEST_ARGS --print-errorlogs
 exit_code=$?
 set -e