diff --git a/.github/workflows/docker-build-and-publish.yaml b/.github/workflows/docker-build-and-publish.yaml index 1f8c17561..f9eca4287 100644 --- a/.github/workflows/docker-build-and-publish.yaml +++ b/.github/workflows/docker-build-and-publish.yaml @@ -54,6 +54,11 @@ on: required: false type: boolean default: false + runs-on: + description: "Runner config as JSON object string. Each key is one of the input `platforms` and each value is the list of runner tags on which the Docker image for that platform should be natively built on. Defaults to a mapping from expected possible `platforms` to GitHub runners native to that architecture." + required: false + default: "{ 'linux/amd64': ['ubuntu-22.04'], 'linux/arm64': ['linux-arm-latest'] }" + type: string secrets: docker-user: diff --git a/docs/workflows/docker-build-and-publish/README.md b/docs/workflows/docker-build-and-publish/README.md index 1d87e8e77..b26cf132a 100644 --- a/docs/workflows/docker-build-and-publish/README.md +++ b/docs/workflows/docker-build-and-publish/README.md @@ -49,18 +49,19 @@ jobs: -| INPUT | TYPE | REQUIRED | DEFAULT | DESCRIPTION | -| ------------------- | ------- | -------- | ----------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | -| checkout-lfs-files | boolean | false | `false` | Whether the Git checkout action should resolve LFS files or not. (Default is false) | -| checkout-submodules | string | false | `"false"` | Whether to checkout submodules: `true` to checkout submodules or `recursive` to recursively checkout submodules. | -| docker-build-args | string | false | | List of build-time variables (see https://github.com/docker/build-push-action?tab=readme-ov-file#inputs) | -| docker-context | string | false | `"."` | The docker context. | -| docker-registry | string | false | `"docker.io"` | Host where the image should be pushed to. | -| dockerfile-path | string | false | `"./Dockerfile"` | Path to the Dockerfile. | -| image-name | string | false | `"${{ github.event.repository.name }}"` | Name of Docker image. | -| image-namespace | string | false | `"bakdata"` | Namespace of Docker image. | -| image-tag | string | false | `"pipeline-${{ github.run_id }}-git-{{ sha }}"` | Tag of Docker image. | -| ref | string | false | | Ref name to checkout | +| INPUT | TYPE | REQUIRED | DEFAULT | DESCRIPTION | +| ------------------- | ------- | -------- | ---------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| checkout-lfs-files | boolean | false | `false` | Whether the Git checkout action should resolve LFS files or not. (Default is false) | +| checkout-submodules | string | false | `"false"` | Whether to checkout submodules: `true` to checkout submodules or `recursive` to recursively checkout submodules. | +| docker-build-args | string | false | | List of build-time variables (see https://github.com/docker/build-push-action?tab=readme-ov-file#inputs) | +| docker-context | string | false | `"."` | The docker context. | +| docker-registry | string | false | `"docker.io"` | Host where the image should be pushed to. | +| dockerfile-path | string | false | `"./Dockerfile"` | Path to the Dockerfile. | +| image-name | string | false | `"${{ github.event.repository.name }}"` | Name of Docker image. | +| image-namespace | string | false | `"bakdata"` | Namespace of Docker image. | +| image-tag | string | false | `"pipeline-${{ github.run_id }}-git-{{ sha }}"` | Tag of Docker image. | +| ref | string | false | | Ref name to checkout | +| runs-on | string | false | `"{ 'linux/amd64': ['ubuntu-22.04'], 'linux/arm64': ['linux-arm-latest'] }"` | Runner config as JSON object string. Each key is one of the input `platforms` and each value is the list of runner tags on which the Docker image for that platform should be natively built on. Defaults to a mapping from expected possible `platforms` to GitHub runners native to that architecture. |