Browse Source

chore(CI): Disable online tests in all but one CI job

They're still slightly flaky even with insanely long timeouts, and even when not they waste a huge amount of our runner time sitting and waiting for the DHT to disconnect and reconnect.

Still run on our fedora job to get almost all of the benefit, plus AddressSanitizer is enabled there for better testing synergy.
reviewable/pr6543/r2
Anthony Bilinski 4 years ago
parent
commit
fd2997c2db
No known key found for this signature in database
GPG Key ID: 2AA8E0DA1B31FB3C
  1. 18
      .ci-scripts/build-osx.sh
  2. 8
      .ci-scripts/build-qtox-linux.sh
  3. 4
      .github/workflows/build-test-deploy.yaml
  4. 7
      windows/cross-compile/build.sh

18
.ci-scripts/build-osx.sh

@ -20,6 +20,14 @@ set -eu -o pipefail
readonly BIN_NAME="qTox.dmg" readonly BIN_NAME="qTox.dmg"
while (( $# > 0 )); do
case $1 in
--run-tests) RUN_TESTS=1; shift ;;
--online-tests) ONLINE_TESTS=1; shift ;;
*) echo "Unexpected argument $1"; exit 1 ;;
esac
done
build_qtox() { build_qtox() {
cmake -DUPDATE_CHECK=ON \ cmake -DUPDATE_CHECK=ON \
-DSPELL_CHECK=OFF \ -DSPELL_CHECK=OFF \
@ -27,8 +35,14 @@ build_qtox() {
-DCMAKE_BUILD_TYPE=Release \ -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH="$(brew --prefix qt@5)" . -DCMAKE_PREFIX_PATH="$(brew --prefix qt@5)" .
make -j$(sysctl -n hw.ncpu) make -j$(sysctl -n hw.ncpu)
export CTEST_OUTPUT_ON_FAILURE=1 if [ ! -z ${RUN_TESTS+x} ]; then
ctest -j$(sysctl -n hw.ncpu) EXCLUDE_TESTS=""
if [ -z ${ONLINE_TESTS+x} ]; then
EXCLUDE_TESTS="-E core"
fi
export CTEST_OUTPUT_ON_FAILURE=1
ctest ${EXCLUDE_TESTS} -j$(sysctl -n hw.ncpu)
fi
make install make install
} }

8
.ci-scripts/build-qtox-linux.sh

@ -28,6 +28,7 @@ while (( $# > 0 )); do
--minimal) MINIMAL=1 ; shift ;; --minimal) MINIMAL=1 ; shift ;;
--full) MINIMAL=0; shift ;; --full) MINIMAL=0; shift ;;
--sanitize) SANITIZE=1; shift ;; --sanitize) SANITIZE=1; shift ;;
--online-tests) ONLINE_TESTS=1; shift ;;
--build-type) BUILD_TYPE=$2; shift 2 ;; --build-type) BUILD_TYPE=$2; shift 2 ;;
--help|-h) usage; exit 1 ;; --help|-h) usage; exit 1 ;;
*) echo "Unexpected argument $1"; usage; exit 1 ;; *) echo "Unexpected argument $1"; usage; exit 1 ;;
@ -71,5 +72,10 @@ else
$SANITIZE_ARGS $SANITIZE_ARGS
fi fi
EXCLUDE_TESTS=""
if [ -z ${ONLINE_TESTS+x} ]; then
EXCLUDE_TESTS="-E core"
fi
cmake --build . -- -j $(nproc) cmake --build . -- -j $(nproc)
ctest -j$(nproc) ctest ${EXCLUDE_TESTS} -j$(nproc)

4
.github/workflows/build-test-deploy.yaml

@ -123,7 +123,7 @@ jobs:
with: with:
docker_image_name: fedora docker_image_name: fedora
- name: Run build - name: Run build
run: docker-compose run --rm fedora ./.ci-scripts/build-qtox-linux.sh --build-type ${{ matrix.build_type }} --${{ matrix.features }} --sanitize run: docker-compose run --rm fedora ./.ci-scripts/build-qtox-linux.sh --build-type ${{ matrix.build_type }} --${{ matrix.features }} --sanitize --online-tests
build-opensuse: build-opensuse:
name: Opensuse name: Opensuse
runs-on: ubuntu-latest runs-on: ubuntu-latest
@ -501,7 +501,7 @@ jobs:
- name: Install toxcore and toxext - name: Install toxcore and toxext
run: buildscripts/build_toxcore_linux.sh run: buildscripts/build_toxcore_linux.sh
- name: Build qTox - name: Build qTox
run: ./.ci-scripts/build-osx.sh run: ./.ci-scripts/build-osx.sh --run-tests
- name: Upload dmg - name: Upload dmg
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v2
with: with:

7
windows/cross-compile/build.sh

@ -37,6 +37,7 @@ while (( $# > 0 )); do
--src-dir) QTOX_SRC_DIR=$2; shift 2 ;; --src-dir) QTOX_SRC_DIR=$2; shift 2 ;;
--arch) ARCH=$2; shift 2 ;; --arch) ARCH=$2; shift 2 ;;
--run-tests) RUN_TESTS=1; shift ;; --run-tests) RUN_TESTS=1; shift ;;
--online-tests) ONLINE_TESTS=1; shift ;;
--build-type) BUILD_TYPE=$2; shift 2;; --build-type) BUILD_TYPE=$2; shift 2;;
*) "Unexpected argument $1"; exit 1 ;; *) "Unexpected argument $1"; exit 1 ;;
esac esac
@ -116,7 +117,11 @@ then
export WINEPATH='/export;/windows/bin' export WINEPATH='/export;/windows/bin'
export CTEST_OUTPUT_ON_FAILURE=1 export CTEST_OUTPUT_ON_FAILURE=1
export PATH="$PATH:/opt/wine-stable/bin" export PATH="$PATH:/opt/wine-stable/bin"
ctest -j$(nproc) EXCLUDE_TESTS=""
if [ -z ${ONLINE_TESTS+x} ]; then
EXCLUDE_TESTS="-E core"
fi
ctest ${EXCLUDE_TESTS} -j$(nproc)
fi fi
set -u set -u

Loading…
Cancel
Save