summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJon Turney <jon.turney@dronecode.org.uk>2018-08-09 23:30:57 +0100
committerJon Turney <jon.turney@dronecode.org.uk>2018-08-29 21:33:12 +0100
commit7a62f8535158c509bd3b521f988f660b208f2c05 (patch)
treeff913d78d9649e5483328017b72e09d59d7ac97d
parentfe322adb0aca025f56346078a386a0317650a049 (diff)
appveyor: Run the xvfb-piglit xts test
Install packages required by piglit and xts, and xz to make compressed archives Always publish test logs as artifacts Also avoid running the (slow) xephyr-glamor test on AppVeyor
-rw-r--r--.appveyor.yml14
-rwxr-xr-xtest/scripts/build-appveyor.sh35
-rwxr-xr-xtest/scripts/xephyr-glamor-piglit.sh4
-rwxr-xr-xtest/scripts/xvfb-piglit.sh6
4 files changed, 49 insertions, 10 deletions
diff --git a/.appveyor.yml b/.appveyor.yml
index 7bc13609f..231263d8a 100644
--- a/.appveyor.yml
+++ b/.appveyor.yml
@@ -25,6 +25,7 @@ ninja,\
pkg-config,\
python3,\
tar,\
+xz,\
windowsdriproto,\
xorgproto,\
libdmx-devel,\
@@ -65,13 +66,24 @@ khronos-opengl-registry,\
python3-lxml,\
xtrans,\
xkbcomp,\
-xkeyboard-config"
+xkeyboard-config,\
+python2-mako,\
+python2-six"
- echo Install done
cache:
- C:\cache
build_script:
+- SET ORIG_PATH=%PATH%
- SET PATH=%CYGWIN_ROOT%/bin
- '%CYGWIN_ROOT%/bin/bash -lc "cd $APPVEYOR_BUILD_FOLDER; ./test/scripts/build-appveyor.sh"'
artifacts:
- path: staging
deploy: off
+test: off
+# publish log artifacts on success or failure
+on_finish:
+- tar -Jcf meson-log.tar.xz build/meson-logs
+- tar -Jcf xvfb-piglit.tar.xz build/test/piglit-results/xvfb
+- SET PATH=%ORIG_PATH%
+- appveyor PushArtifact meson-log.tar.xz
+- appveyor PushArtifact xvfb-piglit.tar.xz
diff --git a/test/scripts/build-appveyor.sh b/test/scripts/build-appveyor.sh
index c89fd7620..ad59ef411 100755
--- a/test/scripts/build-appveyor.sh
+++ b/test/scripts/build-appveyor.sh
@@ -2,7 +2,40 @@
export PREFIX=/usr
+git clone --depth 1 git://anongit.freedesktop.org/git/piglit
+export PIGLIT_DIR=$(pwd)/piglit
+
+# currently, the 'xts' test set in piglit expects to be pointed at a built copy
+# of xts, not an install (which we could package)
+XTS_ARCHIVE="xts-0.99.1-20170616git8809db78-$(uname -m).tar.xz"
+wget -nv ftp://cygwin.com/pub/cygwinx/${XTS_ARCHIVE}
+tar -xf ${XTS_ARCHIVE}
+export XTEST_DIR=$(pwd)/xts
+
+cat > "$PIGLIT_DIR"/piglit.conf << _EOF_
+[xts]
+path=$XTEST_DIR
+_EOF_
+
+# set TET_CONFIG to point to the xts config to be used
+export TET_CONFIG=$(pwd)/test/tetexec.cfg
+
+# XTS contains tests which rely on being able to set a fontpath containing this
+# directory, but non-existent directories are removed from the fontpath by the
+# server, so it must exist
+mkdir -p /etc/X11/fontpath.d/
+
+# suppress some bleating about SHM
+cygserver-config --yes >/dev/null
+cygrunsrv -S cygserver
+
meson setup --prefix=$PREFIX -Dxv=false -Dxf86bigfont=true -Ddmx=true -Dxephyr=true -Dxnest=true -Dxvfb=true -Dxwin=true -Dxorg=true -Dhal=false -Dudev=false -Dpciaccess=false -Dint10=false build/
-meson configure build/
DESTDIR=$(pwd)/staging ninja -C build/ install
ninja -C build/ test
+
+status=$?
+
+cat build/meson-logs/testlog.txt
+cat build/test/piglit-results/xvfb/long-summary
+
+exit $status
diff --git a/test/scripts/xephyr-glamor-piglit.sh b/test/scripts/xephyr-glamor-piglit.sh
index c16fdc4f3..d31ef6989 100755
--- a/test/scripts/xephyr-glamor-piglit.sh
+++ b/test/scripts/xephyr-glamor-piglit.sh
@@ -1,7 +1,7 @@
#!/bin/sh
-# this times out on Travis, because the tests take too long.
-if test "x$TRAVIS_BUILD_DIR" != "x"; then
+# this times out on CI, because the tests take too long.
+if test "x$TRAVIS_BUILD_DIR" != "x" || test "x$APPVEYOR" != "x"; then
exit 77
fi
diff --git a/test/scripts/xvfb-piglit.sh b/test/scripts/xvfb-piglit.sh
index b18a39918..45cc89adf 100755
--- a/test/scripts/xvfb-piglit.sh
+++ b/test/scripts/xvfb-piglit.sh
@@ -1,14 +1,8 @@
#!/bin/sh
-# this times out on Travis, because the tests take too long.
-#if test "x$TRAVIS_BUILD_DIR" != "x"; then
-# exit 77
-#fi
-
export SERVER_COMMAND="$XSERVER_BUILDDIR/hw/vfb/Xvfb \
-noreset \
-screen scrn 1280x1024x24"
export PIGLIT_RESULTS_DIR=$XSERVER_BUILDDIR/test/piglit-results/xvfb
exec $XSERVER_DIR/test/scripts/run-piglit.sh
-