# HG changeset patch # User Markus Mützel # Date 1624178056 -7200 # Node ID 315df8a5ac222113ed224486f57e7333aea1bd1c # Parent 2d17a87740dd54c73ec227263f234769835eeb1a GitHub-CI: Analyze test suite results on Ubuntu. * .github/workflows/make.yaml (ubuntu): Analyze results of test suite and fail on unknown failing tests. diff -r 2d17a87740dd -r 315df8a5ac22 .github/workflows/make.yaml --- a/.github/workflows/make.yaml Sun Jun 20 10:05:14 2021 +0200 +++ b/.github/workflows/make.yaml Sun Jun 20 10:34:16 2021 +0200 @@ -8,6 +8,9 @@ runs-on: ${{ matrix.os }} strategy: + # Allow other runners in the matrix to continue if some fail + fail-fast: false + matrix: # For available GitHub-hosted runners, see: # https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners @@ -59,7 +62,11 @@ - name: setup ccache # setup the github cache used to maintain the ccache from one job to the next - uses: actions/cache@v2 + # uses: actions/cache@v2 + # The original action doesn't upload on error. Use this fork instead. + # FIXME: Consider reverting to the original action when it allows uploading on error. + # See: https://github.com/actions/cache/issues/92 + uses: pat-s/always-upload-cache@v2 with: path: /home/runner/.ccache key: ccache:${{ matrix.os }}:${{ matrix.compiler }}:${{ github.ref }}:${{ steps.ccache_cache_timestamp.outputs.timestamp }}:${{ github.sha }} @@ -120,7 +127,14 @@ continue-on-error: true env: XDG_RUNTIME_DIR: "/home/runner/tmp" - run: xvfb-run -a make -C ./.build check V=1 + run: xvfb-run -a make -C ./.build check V=1 | tee ./test-suite.log + + - name: analyze test suite results + # Make sure the test summary lists 0 "FAIL"s and no "REGRESSION" + run: | + [ -n "$(grep -e "FAIL\s*0" ./test-suite.log)" ] || exit 1 + [ -z "$(grep -e "REGRESSION" ./test-suite.log)" ] || exit 1 + echo No unknown failing tests. macos: