| buildd-url | buildd /route API URL (LoadBalancer/Ingress). | yes | — |
| ca | Client mTLS CA (PEM). | yes | — |
| cert | Client mTLS certificate (PEM). | yes | — |
| key | Client mTLS private key (PEM). | yes | — |
| token | Fallback credential for the /route API when OIDC isn't used: a legacy bearer token, OR a break-glass admin token (see admin-token). Leave empty when buildd enforces OIDC (the recommended setup) — the action mints a GitHub OIDC token automatically. Requires the caller job to set permissions.id-token: write. | — | "" |
| admin-token | Break-glass admin token (sent in the X-Buildkit-Operator-Admin-Token header) — bypasses OIDC. For ops only. | — | "" |
| oidc-audience | Audience for the GitHub OIDC token minted for buildd /route auth. Must match buildd's provider audience. Empty = don't mint (use token/admin-token). | — | buildkit-operator |
| tags | Image tag(s), whitespace-separated (e.g. ghcr.io/org/app:sha). | yes | — |
| repo | Project identity = the cache key. Defaults to the GitHub repository. IGNORED when buildd enforces OIDC (the verified repo claim is authoritative); used only on the legacy/admin path. | — | ${{ github.repository }} |
| name | Optional monorepo component — gives each image its own daemon + cache. | — | "" |
| arch | Build architecture: amd64 | arm64. | — | amd64 |
| context | Build context path. | — | . |
| file | Dockerfile path (default: Dockerfile in the context). | — | "" |
| target | Dockerfile target stage. | — | "" |
| build-args | Build args, one KEY=VALUE per line (forwarded to buildx as --build-arg). | — | "" |
| labels | OCI image labels, one key=value per line (forwarded to buildx as --label). | — | "" |
| secrets | Build secrets, one id=value per line (forwarded to buildx as --secret id=���,env=…). Sent over the build session only — hashed into the cache key, never stored in a layer, the cache, or the image config. | — | "" |
| untrusted | Untrusted (fork-PR) build: route to an ephemeral daemon, no write-back to the shared cache (anti cache-poisoning). | — | false |
| push | Push the result to the registry. | — | false |
| gateway-host | Optional: the gateway's public domain (e.g. bkod.example.com). When set, the daemon endpoint is reached at buildkitd-<key>.<gateway-host> over real wildcard DNS — preferred over gateway-ip (IP-independent, survives a gateway LB IP change). | — | "" |
| gateway-ip | Optional: gateway LoadBalancer IP, to map the gateway hostname for this run when there is no wildcard DNS yet (testing/bootstrap). Prefer gateway-host when wildcard DNS exists. | — | "" |
| provenance | SLSA provenance attestation, e.g. 'mode=max' (needs push: true). Empty = off. | — | "" |
| sbom | Generate an SBOM attestation (needs push: true). | — | false |
| sign | cosign keyless-sign the pushed image. Requires push: true and the caller job to set permissions.id-token: write. | — | false |