diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bf0f0e1..c7944b1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,10 +18,10 @@ jobs: name: Test runs-on: ubuntu-latest steps: - - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Setup Go - uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6.5.0 + uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0 with: go-version: '1.26.5' @@ -60,7 +60,7 @@ jobs: || { echo "::error::coverage ${total}% is below floor ${MIN_COVERAGE}%"; exit 1; } - name: Upload coverage to Codecov - uses: codecov/codecov-action@0fb7174895f61a3b6b78fc075e0cd60383518dac # v5.5.5 + uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f # v7.0.0 with: files: coverage.out fail_ci_if_error: false diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 70636b7..793221b 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -15,19 +15,19 @@ jobs: name: Release runs-on: ubuntu-latest steps: - - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: fetch-depth: 0 - name: Setup Go - uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6.5.0 + uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0 with: go-version: '1.26.5' # cosign for keyless artifact signing (the .goreleaser signs: block invokes # `cosign sign-blob --bundle` over checksums.txt using this job's OIDC identity). - name: Install cosign - uses: sigstore/cosign-installer@d58896d6a1865668819e1d91763c7751a165e159 # v3.9.2 + uses: sigstore/cosign-installer@6f9f17788090df1f26f669e9d70d6ae9567deba6 # v4.1.2 # Hard-fail the tag if the committed reference (docs-gen/) is stale, so a # release can never ship a reference that lags the code. @@ -50,7 +50,7 @@ jobs: # the artifacts were built. Attests the checksums.txt (covers every artifact # by hash) so a single attestation vouches for the whole release. - name: Attest build provenance - uses: actions/attest-build-provenance@e8998f949152b193b063cb0ec769d69d929409be # v2.4.0 + uses: actions/attest-build-provenance@0f67c3f4856b2e3261c31976d6725780e5e4c373 # v4.1.1 with: subject-path: 'dist/checksums.txt' diff --git a/.github/workflows/security.yml b/.github/workflows/security.yml index 9ee8110..9756b19 100644 --- a/.github/workflows/security.yml +++ b/.github/workflows/security.yml @@ -16,9 +16,9 @@ jobs: name: Go Vulnerability Check runs-on: ubuntu-latest steps: - - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Setup Go - uses: actions/setup-go@924ae3a1cded613372ab5595356fb5720e22ba16 # v6.5.0 + uses: actions/setup-go@b7ad1dad31e06c5925ef5d2fc7ad053ef454303e # v7.0.0 with: go-version: '1.26.5' - name: Install govulncheck @@ -46,7 +46,7 @@ jobs: name: Secret Scan (gitleaks) runs-on: ubuntu-latest steps: - - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 with: fetch-depth: 0 # full history so leaked-then-removed secrets are caught # Run the gitleaks BINARY directly (MIT-licensed, free for orgs). The @@ -65,7 +65,7 @@ jobs: name: Trivy Security Scan runs-on: ubuntu-latest steps: - - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Trivy filesystem scan (vulns + secrets) uses: aquasecurity/trivy-action@ed142fd0673e97e23eac54620cfb913e5ce36c25 # v0.36.0 with: @@ -88,7 +88,7 @@ jobs: container: image: semgrep/semgrep steps: - - uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3 + - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 # Enforcing: fails the build on findings. Triaged false-positives are # annotated inline with `# nosemgrep: -- ` (#368). - name: Semgrep scan