Skip to content

Commit 49ba957

Browse files
committed
ci: artifact attestation must not gate publishing
The v0.6.9 tag build got all the way through -- 15/15 wheels built, smoke test passed -- then failed the whole publish job at the last hurdle: Failed to persist attestation: Feature not available for the GuillaumeLessard organization. Build provenance attestation requires a public repository or GitHub Advanced Security; this is a private org repo. Nothing reached PyPI as a result, purely because of a supply-chain nicety that is unavailable on this plan. Now conditioned on `github.event.repository.private == false`, so it resumes automatically if the repo is ever made public, plus continue-on-error so a plan or visibility change can never block a release again. The publish step itself is unchanged and still uses trusted-publisher OIDC.
1 parent 90b5004 commit 49ba957

1 file changed

Lines changed: 9 additions & 0 deletions

File tree

.github/workflows/release-build.yml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -231,7 +231,16 @@ jobs:
231231
"
232232
rm -rf /tmp/smoke_venv
233233
234+
# Build provenance requires a public repository or GitHub Advanced Security.
235+
# On this private org repo the API returns "Feature not available for the
236+
# GuillaumeLessard organization", which failed the whole publish job AFTER
237+
# all 15 wheels had built and passed the smoke test. Attestation is a
238+
# supply-chain nicety; it must not gate shipping. Conditioned on visibility
239+
# so it resumes automatically if the repo is ever made public, and
240+
# continue-on-error so a plan change can never block a release again.
234241
- name: Generate artifact attestations
242+
if: ${{ github.event.repository.private == false }}
243+
continue-on-error: true
235244
uses: actions/attest-build-provenance@v2
236245
with:
237246
subject-path: "dist/*"

0 commit comments

Comments
 (0)