diff --git a/.github/workflows/build-syncthing.yaml b/.github/workflows/build-syncthing.yaml index 6a5c570ad..cce4ce9ab 100644 --- a/.github/workflows/build-syncthing.yaml +++ b/.github/workflows/build-syncthing.yaml @@ -92,6 +92,28 @@ jobs: run: | go test -v ./meta + # + # The basic checks job is a virtual one that depends on the matrix tests, + # the correctness checks, and various builds that we always do. This makes + # it easy to have the PR process have a single test as a gatekeeper for + # merging, instead of having to add all the matrix tests and update them + # each time the version changes. (The top level test is not available for + # choosing there, only the matrix "children".) + # + + basics: + name: Basic checks passed + runs-on: ubuntu-latest + needs: + - build-test + - correctness + - package-linux + - package-cross + - package-source + - package-debian + steps: + - uses: actions/checkout@v3 + # # Windows # @@ -100,8 +122,6 @@ jobs: name: Package for Windows if: github.event_name == 'push' && (github.ref == 'refs/heads/release' || startsWith(github.ref, 'refs/heads/release-')) environment: signing - needs: - - build-test runs-on: windows-latest steps: - name: Set git to use LF @@ -157,8 +177,6 @@ jobs: package-linux: name: Package for Linux - needs: - - build-test runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 @@ -199,8 +217,6 @@ jobs: name: Package for macOS if: github.event_name == 'push' && (github.ref == 'refs/heads/release' || startsWith(github.ref, 'refs/heads/release-')) environment: signing - needs: - - build-test runs-on: macos-latest steps: - uses: actions/checkout@v3 @@ -291,6 +307,7 @@ jobs: environment: signing needs: - package-macos + - basics runs-on: macos-latest steps: - name: Download artifacts @@ -320,8 +337,6 @@ jobs: package-cross: name: Package cross compiled - needs: - - build-test runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 @@ -375,8 +390,6 @@ jobs: package-source: name: Package source code - needs: - - build-test runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 @@ -418,6 +431,7 @@ jobs: if: github.event_name == 'push' && (github.ref == 'refs/heads/release' || startsWith(github.ref, 'refs/heads/release-')) environment: signing needs: + - basics - package-windows - package-linux - package-macos @@ -465,8 +479,6 @@ jobs: package-debian: name: Package for Debian - needs: - - build-test runs-on: ubuntu-latest steps: - uses: actions/checkout@v3