Skip to content

Commit 900ac3a

Browse files
feat(ci): attest build provenance (#661)
Estate build-provenance attestation rollout. Adds `actions/attest-build-provenance@v2` (SHA-pinned, per the repo's full-SHA `uses:` policy) to the `build` matrix job of `release.yml`. **Attested:** each per-target compiler binary (`affinescript-<target>` for linux-x64 / macos-x64 / macos-arm64) right after it is staged, before the `gh release upload`. **Changes (additive only):** - Added a job-level `permissions` block to `build`: `contents: write` (preserves the existing `gh release upload`) + `id-token: write` + `attestations: write`. - Added an "Attest build provenance" step after "Stage the binary", with `subject-path: 'affinescript-${{ matrix.target }}'`. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
1 parent f90d57b commit 900ac3a

1 file changed

Lines changed: 8 additions & 0 deletions

File tree

.github/workflows/release.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,10 @@ jobs:
5252
fi
5353
build:
5454
needs: prepare
55+
permissions:
56+
contents: write
57+
id-token: write
58+
attestations: write
5559
strategy:
5660
fail-fast: false
5761
matrix:
@@ -98,6 +102,10 @@ jobs:
98102
run: |
99103
install -m 0755 _build/default/bin/main.exe \
100104
"affinescript-${{ matrix.target }}"
105+
- name: Attest build provenance
106+
uses: actions/attest-build-provenance@e8998f949152b193b063cb0ec769d69d929409be # v2
107+
with:
108+
subject-path: 'affinescript-${{ matrix.target }}'
101109
- name: Upload the binary to the release
102110
env:
103111
GH_TOKEN: ${{ github.token }}

0 commit comments

Comments
 (0)