diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a7adb882..a68a8eef 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,6 +13,14 @@ jobs: runs-on: ${{ matrix.config.os }} timeout-minutes: 120 strategy: + # Always run master branch builds to completion. This allows the cache to + # stay mostly up-to-date in situations where a single job fails due to + # e.g. a flaky test. + # Don't fast-fail on tag build because publishing binaries shouldn't be + # prevented if 'cargo publish' fails (which can be a false negative). + fail-fast: + ${{ github.event_name == 'pull_request' || (github.ref != + 'refs/heads/master' && !startsWith(github.ref, 'refs/tags/')) }} matrix: config: - os: macOS-latest