[v2,1/2] ci: allow multiple test suites to run in one job
Checks
Commit Message
Run multiple test suites in a single Travis CI job helps to avoid
job bloating and save build time.
When RUN_TESTS is set, TEST_SUITES includes a list of suites that
need to run in the job, otherwise fast-tests is run by default.
Suggested-by: David Marchand <david.marchand@redhat.com>
Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Reviewed-by: Gavin Hu <gavin.hu@arm.com>
---
.ci/linux-build.sh | 4 +++-
.ci/linux-setup.sh | 16 +++++++++++-----
2 files changed, 14 insertions(+), 6 deletions(-)
@@ -90,5 +90,7 @@ if [ "$ABI_CHECKS" = "1" ]; then
fi
if [ "$RUN_TESTS" = "1" ]; then
- sudo meson test -C build --suite fast-tests -t 3
+ for testsuite in ${TEST_SUITES:-fast-tests}; do
+ sudo meson test -C build --suite $testsuite -t 3
+ done
fi
@@ -3,10 +3,16 @@
# need to install as 'root' since some of the unit tests won't run without it
sudo python3 -m pip install --upgrade 'meson==0.47.1'
-# skip hugepage settings if tests will not run
+# set up hugepage if fast-tests suite (default) will run
if [ "$RUN_TESTS" = "1" ]; then
- # setup hugepages
- cat /proc/meminfo
- sudo sh -c 'echo 1024 > /proc/sys/vm/nr_hugepages'
- cat /proc/meminfo
+ for testsuite in ${TEST_SUITES:-fast-tests}; do
+ if [ "$testsuite" = "fast-tests" ]; then
+ # setup hugepages
+ cat /proc/meminfo
+ sudo sh -c 'echo 1024 > /proc/sys/vm/nr_hugepages'
+ cat /proc/meminfo
+
+ break
+ fi
+ done
fi