Skip to content

Commit 9b8faf4

Browse files
authored
Enable Sigstore wheel attestations on PyPI publish
- Set attestations: true in pypa/gh-action-pypi-publish step (id-token: write already present) - Add Supply Chain Security section to README with verification steps and cross-reference to decree#16 Closes #7
1 parent f4f2f20 commit 9b8faf4

2 files changed

Lines changed: 15 additions & 0 deletions

File tree

.github/workflows/publish.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ jobs:
2727
with:
2828
packages-dir: sdk/dist/
2929
print-hash: true
30+
attestations: true
3031
- run: gh release create "${{ github.ref_name }}" --generate-notes sdk/dist/*.whl sdk/dist/*.tar.gz
3132
env:
3233
GH_TOKEN: ${{ github.token }}

README.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,20 @@ Runnable examples in the [`examples/`](examples/) directory:
8585

8686
For detailed concepts (schemas, typed values, versioning, auth), see the [main OpenDecree docs](https://github.com/opendecree/decree).
8787

88+
## Supply Chain Security
89+
90+
Each release wheel is signed with [Sigstore](https://www.sigstore.dev/) via the GitHub Actions
91+
OIDC identity. Attestations are visible on the [PyPI project page](https://pypi.org/project/opendecree/).
92+
93+
To verify a downloaded wheel locally:
94+
95+
```bash
96+
pip download opendecree --no-deps
97+
gh attestation verify opendecree-*.whl --repo opendecree/decree-python
98+
```
99+
100+
> See [decree#16](https://github.com/opendecree/decree/issues/16) for the org-wide attestation plan.
101+
88102
## Requirements
89103

90104
- Python 3.11+

0 commit comments

Comments
 (0)