diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index bf36ee1cdf..505bac1308 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -65,14 +65,14 @@ jobs:
# Dummy step to gate other tests on without repeating the whole list
linting-done:
- if: ${{ always() }} # Run this even if prior jobs were skipped
+ if: ${{ !cancelled() }} # Run this even if prior jobs were skipped
needs: [lint, lint-crlf, lint-newsfile, lint-sdist]
runs-on: ubuntu-latest
steps:
- run: "true"
trial:
- if: ${{ !failure() }} # Allow previous steps to be skipped, but not fail
+ if: ${{ !cancelled() && !failure() }} # Allow previous steps to be skipped, but not fail
needs: linting-done
runs-on: ubuntu-latest
strategy:
@@ -131,7 +131,7 @@ jobs:
|| true
trial-olddeps:
- if: ${{ !failure() }} # Allow previous steps to be skipped, but not fail
+ if: ${{ !cancelled() && !failure() }} # Allow previous steps to be skipped, but not fail
needs: linting-done
runs-on: ubuntu-latest
steps:
@@ -156,7 +156,7 @@ jobs:
trial-pypy:
# Very slow; only run if the branch name includes 'pypy'
- if: ${{ contains(github.ref, 'pypy') && !failure() }}
+ if: ${{ contains(github.ref, 'pypy') && !failure() && !cancelled() }}
needs: linting-done
runs-on: ubuntu-latest
strategy:
@@ -185,7 +185,7 @@ jobs:
|| true
sytest:
- if: ${{ !failure() }}
+ if: ${{ !failure() && !cancelled() }}
needs: linting-done
runs-on: ubuntu-latest
container:
@@ -245,7 +245,7 @@ jobs:
/logs/**/*.log*
portdb:
- if: ${{ !failure() }} # Allow previous steps to be skipped, but not fail
+ if: ${{ !failure() && !cancelled() }} # Allow previous steps to be skipped, but not fail
needs: linting-done
runs-on: ubuntu-latest
strategy:
@@ -286,7 +286,7 @@ jobs:
- run: .buildkite/scripts/test_synapse_port_db.sh
complement:
- if: ${{ !failure() }}
+ if: ${{ !failure() && !cancelled() }}
needs: linting-done
runs-on: ubuntu-latest
container:
|