.travis.yml: Move shell code out of .travis.yml
authorBart Van Assche <bvanassche@acm.org>
Sun, 7 Jun 2020 19:11:00 +0000 (12:11 -0700)
committerJens Axboe <axboe@kernel.dk>
Sun, 7 Jun 2020 23:30:36 +0000 (17:30 -0600)
Shell code in a .travis.yml file is hard to test. Make it easy to run the
shell code locally and to verify that code with shellcheck by moving the
shell code into separate files.

Signed-off-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
.travis.yml
ci/travis-build.sh [new file with mode: 0755]
ci/travis-install.sh [new file with mode: 0755]

index eba16baa2d03871607d6b5a73d739867a2dee00a..b64f0a958bbc418212e351e8bec4531c8e4ea18b 100644 (file)
@@ -39,29 +39,7 @@ matrix:
       arch: arm64
 
 before_install:
-  - EXTRA_CFLAGS="-Werror"
-  - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then
-        pkgs=(libaio-dev libcunit1 libcunit1-dev libgoogle-perftools4 libibverbs-dev libiscsi-dev libnuma-dev librbd-dev librdmacm-dev libz-dev);
-        if [[ "$BUILD_ARCH" == "x86" ]]; then
-            pkgs=("${pkgs[@]/%/:i386}");
-            pkgs+=(gcc-multilib python3-scipy);
-            EXTRA_CFLAGS="${EXTRA_CFLAGS} -m32";
-        else
-            pkgs+=(glusterfs-common python3-scipy);
-        fi;
-        sudo apt-get -qq update;
-        sudo apt-get install --no-install-recommends -qq -y "${pkgs[@]}";
-    fi;
-  - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
-        brew update;
-        brew install cunit;
-        pip3 install scipy;
-    fi;
+  - ci/travis-install.sh
+
 script:
-  - ./configure --extra-cflags="${EXTRA_CFLAGS}" && make
-  - make test
-  - if [[ "$TRAVIS_CPU_ARCH" == "arm64" ]]; then
-        sudo python3 t/run-fio-tests.py --skip 6 1007 1008 --debug -p 1010:"--skip 15 16 17 18 19 20";
-    else
-        sudo python3 t/run-fio-tests.py --skip 6 1007 1008 --debug;
-    fi;
+  - ci/travis-build.sh
diff --git a/ci/travis-build.sh b/ci/travis-build.sh
new file mode 100755 (executable)
index 0000000..fff9c08
--- /dev/null
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+EXTRA_CFLAGS="-Werror"
+
+if [[ "$BUILD_ARCH" == "x86" ]]; then
+    EXTRA_CFLAGS="${EXTRA_CFLAGS} -m32"
+fi
+
+./configure --extra-cflags="${EXTRA_CFLAGS}" &&
+    make &&
+    make test &&
+    if [[ "$TRAVIS_CPU_ARCH" == "arm64" ]]; then
+       sudo python3 t/run-fio-tests.py --skip 6 1007 1008 --debug -p 1010:"--skip 15 16 17 18 19 20"
+    else
+       sudo python3 t/run-fio-tests.py --skip 6 1007 1008 --debug
+    fi
diff --git a/ci/travis-install.sh b/ci/travis-install.sh
new file mode 100755 (executable)
index 0000000..096347e
--- /dev/null
@@ -0,0 +1,31 @@
+#!/bin/bash
+
+case "$TRAVIS_OS_NAME" in
+    "linux")
+       pkgs=(
+           libaio-dev
+           libcunit1
+           libcunit1-dev
+           libgoogle-perftools4
+           libibverbs-dev
+           libiscsi-dev
+           libnuma-dev
+           librbd-dev
+           librdmacm-dev
+           libz-dev
+       )
+       if [[ "$BUILD_ARCH" == "x86" ]]; then
+           pkgs=("${pkgs[@]/%/:i386}")
+           pkgs+=(gcc-multilib python3-scipy)
+       else
+           pkgs+=(glusterfs-common python3-scipy)
+       fi
+       sudo apt-get -qq update
+       sudo apt-get install --no-install-recommends -qq -y "${pkgs[@]}"
+       ;;
+    "osx")
+       brew update
+       brew install cunit
+       pip3 install scipy
+       ;;
+esac