ci: enable unit tests with Travis

When building under Travis (or another linux CI service), enable
running the fast-tests when the RUN_TESTS environment variable is set.

For the Travis service, introduce two new shared builds, since the
shared builds are the ones passing.  Builds that are statically
linked still show some issues in some of the eal_flags tests.  We make
new builds for this, rather than piggybacking, because 'at a glance'
it is difficult to determine why a build fails, and if tests were
enabled for all builds, then looking at the logs for any build would
take a significant amount of time.

Finally, the command to invoke fast tests includes a timeout
multiplier, since some CI environments don't have enough resources to
complete the tests in the default 10s timeout period.

Signed-off-by: Aaron Conole <aconole@redhat.com>
Acked-by: Michael Santana <msantana@redhat.com>
Reviewed-by: David Marchand <david.marchand@redhat.com>
This commit is contained in:
Aaron Conole 2019-08-02 17:25:52 -04:00 committed by Thomas Monjalon
parent 9b1c025cfe
commit ad2b2cfb1e
3 changed files with 23 additions and 2 deletions

View File

@ -22,3 +22,11 @@ fi
OPTS="$OPTS --default-library=$DEF_LIB"
meson build --werror -Dexamples=all $OPTS
ninja -C build
if [ "$BUILD_DOCS" = "1" ]; then
ninja -C build doc
fi
if [ "$RUN_TESTS" = "1" ]; then
sudo meson test -C build --suite fast-tests -t 3
fi

View File

@ -1,3 +1,9 @@
#!/bin/sh
python3 -m pip install --upgrade meson --user
# need to install as 'root' since some of the unit tests won't run without it
sudo python3 -m pip install --upgrade meson
# setup hugepages
cat /proc/meminfo
sudo sh -c 'echo 1024 > /proc/sys/vm/nr_hugepages'
cat /proc/meminfo

View File

@ -30,6 +30,7 @@ env:
- DEF_LIB="shared"
- DEF_LIB="static" OPTS="-Denable_kmods=false"
- DEF_LIB="shared" OPTS="-Denable_kmods=false"
- DEF_LIB="shared" RUN_TESTS=1 BUILD_DOCS=1
matrix:
include:
@ -51,7 +52,7 @@ matrix:
apt:
packages:
- *extra_packages
- env: DEF_LIB="shared" EXTRA_PACKAGES=1
- env: DEF_LIB="shared" EXTRA_PACKAGES=1 RUN_TESTS=1 BUILD_DOCS=1
compiler: gcc
addons:
apt:
@ -81,6 +82,12 @@ matrix:
apt:
packages:
- *extra_packages
- env: DEF_LIB="shared" EXTRA_PACKAGES=1 RUN_TESTS=1 BUILD_DOCS=1
compiler: clang
addons:
apt:
packages:
- *extra_packages
- env: DEF_LIB="static" OPTS="-Denable_kmods=false" EXTRA_PACKAGES=1
compiler: clang
addons: