[ci] Add targets to bundle tests and add a script to run them in Helix
[mono-project.git] / scripts / ci / run-test-helix.sh
blobbfc54f524e95708f1d5d1d4aea7a600173682018
1 #!/bin/bash -e
3 source ${MONO_REPO_ROOT}/scripts/ci/util.sh
5 helix_send_build_start_event "build/tests/$MONO_HELIX_TYPE/"
6 ${TESTCMD} --label=compile-runtime-tests --timeout=20m --fatal make -w -C mono -j ${CI_CPU_COUNT} test
7 ${TESTCMD} --label=compile-bcl-tests --timeout=40m --fatal make -i -w -C runtime -j ${CI_CPU_COUNT} test xunit-test
8 # TODO: remove the explicit xbuild tests compile step once the nunitlite dependency bug is fixed
9 ${TESTCMD} --label=compile-xbuild_12 --timeout=5m --fatal make -w -C mcs/class -j ${CI_CPU_COUNT} test PROFILE=xbuild_12
10 ${TESTCMD} --label=compile-xbuild_14 --timeout=5m --fatal make -w -C mcs/class -j ${CI_CPU_COUNT} test PROFILE=xbuild_14
11 ${TESTCMD} --label=create-test-payload --timeout=5m --fatal make -w test-bundle TEST_BUNDLE_PATH="$MONO_REPO_ROOT/mono-test-bundle"
12 helix_send_build_done_event "build/tests/$MONO_HELIX_TYPE/" 0
14 # get libgdiplus from CI output
15 if [[ ${CI_TAGS} == *'linux-amd64'* ]]; then
16 wget "https://xamjenkinsartifact.blob.core.windows.net/test-libgdiplus-mainline/280/debian-9-amd64/src/.libs/libgdiplus.so" -O "$MONO_REPO_ROOT/mono-test-bundle/mono-libgdiplus.so"
17 else
18 echo "Unknown OS, couldn't determine appropriate libgdiplus."
19 exit 1
22 export MONO_HELIX_TEST_PAYLOAD_DIRECTORY="$MONO_REPO_ROOT/mono-test-bundle"
23 export MONO_HELIX_CORRELATION_ID_FILE="$MONO_REPO_ROOT/test-correlation-id.txt"
24 ${TESTCMD} --label=upload-helix-tests --timeout=5m --fatal make -w -C mcs/tools/mono-helix-client upload-to-helix
26 # test suites which aren't ported to helix yet
27 ${TESTCMD} --label=mini-seq-points --timeout=5m make -w -C mono/mini -k check-seq-points
28 ${TESTCMD} --label=mini-aotcheck --timeout=5m make -j ${CI_CPU_COUNT} -w -C mono/mini -k aotcheck
29 ${TESTCMD} --label=runtime --timeout=20m make -w -C mono/tests test-wrench IGNORE_TEST_JIT=1 V=1
30 ${TESTCMD} --label=runtime-unit-tests --timeout=5m make -w -C mono/unit-tests -k check
31 ${TESTCMD} --label=monolinker --timeout=10m make -w -C mcs/tools/linker check
33 # wait for helix tests to complete
34 export MONO_HELIX_CORRELATION_ID=$(cat "$MONO_HELIX_CORRELATION_ID_FILE")
35 ${TESTCMD} --label=wait-helix-tests --timeout=40m make -w -C mcs/tools/mono-helix-client wait-for-job-completion