diff --git a/.github/workflows/bake.yml b/.github/workflows/bake.yml index a368700..e5f97b4 100644 --- a/.github/workflows/bake.yml +++ b/.github/workflows/bake.yml @@ -13,6 +13,11 @@ on: description: "Whether to distribute the build across multiple runners (one platform per runner)" required: false default: true + fail-fast: + type: boolean + description: "Whether to cancel all in-progress and queued jobs in the matrix if any job fails" + required: false + default: false setup-qemu: type: boolean description: "Runs the setup-qemu-action step to install QEMU static binaries" @@ -431,7 +436,7 @@ jobs: needs: - prepare strategy: - fail-fast: false + fail-fast: ${{ inputs.fail-fast }} matrix: include: ${{ fromJson(needs.prepare.outputs.includes) }} outputs: diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6d89cb0..3f5e3e5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -13,6 +13,11 @@ on: description: "Whether to distribute the build across multiple runners (one platform per runner)" required: false default: true + fail-fast: + type: boolean + description: "Whether to cancel all in-progress and queued jobs in the matrix if any job fails" + required: false + default: false setup-qemu: type: boolean description: "Runs the setup-qemu-action step to install QEMU static binaries" @@ -333,7 +338,7 @@ jobs: needs: - prepare strategy: - fail-fast: false + fail-fast: ${{ inputs.fail-fast }} matrix: include: ${{ fromJson(needs.prepare.outputs.includes) }} outputs: diff --git a/README.md b/README.md index f9b1681..25eb553 100644 --- a/README.md +++ b/README.md @@ -224,6 +224,7 @@ jobs: |------------------------|----------|--------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `runner` | String | `auto` | [Ubuntu GitHub Hosted Runner](https://github.com/actions/runner-images?tab=readme-ov-file#available-images) to build on (one of `auto`, `amd64`, `arm64`). The `auto` runner selects the best-matching runner based on target `platforms`. You can set it to `amd64` if your build doesn't require emulation (e.g. cross-compilation) | | `distribute` | Bool | `true` | Whether to distribute the build across multiple runners (one platform per runner) | +| `fail-fast` | Bool | `false` | Whether to cancel all in-progress and queued jobs in the matrix if any job fails | | `setup-qemu` | Bool | `false` | Runs the `setup-qemu-action` step to install QEMU static binaries | | `artifact-name` | String | `docker-github-builder-assets` | Name of the uploaded GitHub artifact (for `local` output) | | `artifact-upload` | Bool | `false` | Upload build output GitHub artifact (for `local` output) | @@ -372,6 +373,7 @@ jobs: |------------------------|--------|--------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | `runner` | String | `auto` | [Ubuntu GitHub Hosted Runner](https://github.com/actions/runner-images?tab=readme-ov-file#available-images) to build on (one of `auto`, `amd64`, `arm64`). The `auto` runner selects the best-matching runner based on target `platforms`. You can set it to `amd64` if your build doesn't require emulation (e.g. cross-compilation) | | `distribute` | Bool | `true` | Whether to distribute the build across multiple runners (one platform per runner) | +| `fail-fast` | Bool | `false` | Whether to cancel all in-progress and queued jobs in the matrix if any job fails | | `setup-qemu` | Bool | `false` | Runs the `setup-qemu-action` step to install QEMU static binaries | | `artifact-name` | String | `docker-github-builder-assets` | Name of the uploaded GitHub artifact (for `local` output) | | `artifact-upload` | Bool | `false` | Upload build output GitHub artifact (for `local` output) |