When building under Travis (or another linux CI service), enable running the
fast-tests for selected builds.  Only the shared builds are enabled at this
point, since they are the ones passing.  Builds that are statically linked
still show some issues in some of the eal_flags tests.  Additionally,
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 <acon...@redhat.com>
---
 .ci/linux-build.sh | 8 ++++++++
 .ci/linux-setup.sh | 8 +++++++-
 .travis.yml        | 9 ++++++++-
 3 files changed, 23 insertions(+), 2 deletions(-)

diff --git a/.ci/linux-build.sh b/.ci/linux-build.sh
index d5783c1a4..75f740648 100755
--- a/.ci/linux-build.sh
+++ b/.ci/linux-build.sh
@@ -22,3 +22,11 @@ fi
 OPTS="$OPTS --default-library=$DEF_LIB"
 meson build --werror -Dexamples=all $OPTS
 ninja -C build
+
+if [ "$RUN_TESTS" = "1" ]; then
+    # On the test build, also build the documentation, since it's expensive
+    # and we shouldn't need to build so much of it.
+    ninja -C build doc
+
+    sudo meson test -C build --suite fast-tests -t 3
+fi
diff --git a/.ci/linux-setup.sh b/.ci/linux-setup.sh
index acdf9f370..a40e62eaa 100755
--- a/.ci/linux-setup.sh
+++ b/.ci/linux-setup.sh
@@ -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
diff --git a/.travis.yml b/.travis.yml
index 7b167fa64..c0c27bb7f 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -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
 
 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
     compiler: gcc
     addons:
       apt:
@@ -81,6 +82,12 @@ matrix:
       apt:
         packages:
           - *extra_packages
+  - env: DEF_LIB="shared" EXTRA_PACKAGES=1 RUN_TESTS=1
+    compiler: clang
+    addons:
+      apt:
+        packages:
+          - *extra_packages
   - env: DEF_LIB="static" OPTS="-Denable_kmods=false" EXTRA_PACKAGES=1
     compiler: clang
     addons:
-- 
2.21.0

Reply via email to