diff --git a/.github/workflows/govulncheck.yml b/.github/workflows/govulncheck.yml index d11896b..865f4ef 100644 --- a/.github/workflows/govulncheck.yml +++ b/.github/workflows/govulncheck.yml @@ -23,13 +23,18 @@ on: required: false type: string default: './...' + runner: + description: 'Runner for the govulncheck job (default: ubuntu-slim)' + required: false + type: string + default: 'ubuntu-slim' permissions: contents: read # baseline for checkout jobs: govulncheck: - runs-on: ubuntu-slim + runs-on: ${{ inputs.runner }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: diff --git a/.github/workflows/lint-codegen-fabrica.yml b/.github/workflows/lint-codegen-fabrica.yml index b0416a4..7020622 100644 --- a/.github/workflows/lint-codegen-fabrica.yml +++ b/.github/workflows/lint-codegen-fabrica.yml @@ -25,13 +25,18 @@ on: required: false type: string default: '' + runner: + description: 'Runner for the codegen check job (default: ubuntu-slim)' + required: false + type: string + default: 'ubuntu-slim' permissions: contents: read # baseline for checkout jobs: lint-codegen-fabrica: - runs-on: ubuntu-slim + runs-on: ${{ inputs.runner }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: diff --git a/.github/workflows/lint-go.yml b/.github/workflows/lint-go.yml index 960a2df..ef4019c 100644 --- a/.github/workflows/lint-go.yml +++ b/.github/workflows/lint-go.yml @@ -25,13 +25,18 @@ on: required: false type: string default: 'latest' + runner: + description: 'Runner for the golangci-lint job (default: ubuntu-slim)' + required: false + type: string + default: 'ubuntu-slim' permissions: contents: read # baseline for checkout jobs: golangci-lint: - runs-on: ubuntu-slim + runs-on: ${{ inputs.runner }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: diff --git a/.github/workflows/test-unit-go.yml b/.github/workflows/test-unit-go.yml index f87a6d1..b2fc023 100644 --- a/.github/workflows/test-unit-go.yml +++ b/.github/workflows/test-unit-go.yml @@ -41,13 +41,18 @@ on: required: false type: string default: 'coverage.out' + runner: + description: 'Runner for the tests job (default: ubuntu-slim)' + required: false + type: string + default: 'ubuntu-slim' permissions: contents: read # baseline for checkout jobs: test-unit-go: - runs-on: ubuntu-slim + runs-on: ${{ inputs.runner }} steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: diff --git a/.github/workflows/trivy-image-scan.yml b/.github/workflows/trivy-image-scan.yml index 043f4e9..8253ad2 100644 --- a/.github/workflows/trivy-image-scan.yml +++ b/.github/workflows/trivy-image-scan.yml @@ -37,6 +37,11 @@ on: required: false type: string default: '1' + runner: + description: 'Runner for the scan job (default: ubuntu-slim)' + required: false + type: string + default: 'ubuntu-slim' permissions: contents: read # baseline for checkout @@ -109,7 +114,7 @@ jobs: trivy: needs: discover if: ${{ needs.discover.outputs.images != '[]' }} - runs-on: ubuntu-slim + runs-on: ${{ inputs.runner }} strategy: fail-fast: false matrix: diff --git a/README.md b/README.md index 163f0af..57c4468 100644 --- a/README.md +++ b/README.md @@ -58,6 +58,8 @@ jobs: Pin a commit SHA instead for maximum supply-chain safety if desired. +Workflows with a `runner` input run on `ubuntu-slim` by default, which has 1 CPU and a 15-minute job limit; set `runner: ubuntu-latest` for longer jobs. + ## Workflows ### Building and releasing with GoReleaser @@ -240,6 +242,7 @@ jobs: # with: # golangci-lint-version: v2.13.2 # go-version-file: go.mod + # runner: ubuntu-latest ``` ### test-unit-go (Reusable Workflow) @@ -268,6 +271,7 @@ jobs: # ./... # coverage: true # coverage-file: coverage.out + # runner: ubuntu-latest ``` ### reuse (Reusable Workflow) @@ -309,6 +313,7 @@ jobs: # with: # go-version: 1.26.7 # default: read from go.mod # go-package: ./cmd/... + # runner: ubuntu-latest ``` ### dependency-review (Reusable Workflow) @@ -353,6 +358,7 @@ jobs: # severity: CRITICAL # ignore-unfixed: true # exit-code: '0' # report only + # runner: ubuntu-latest ``` ### scorecard (Reusable Workflow) @@ -555,6 +561,7 @@ jobs: # go-version: stable # mutually exclusive with go-version-file # go-version-file: go.mod # fabrica-ref: v0.4.5 # tag, branch, or SHA; default: version in go.mod + # runner: ubuntu-latest ``` ### lint-renovate (Reusable Workflow)