Skip to content

Commit 60fa38d

Browse files
authored
ci: use explicit release notes for immutable releases (#456)
Refs #455\n\nThe v0.5.0 publication run successfully built, published, and attested the artifacts, but the final GitHub Release creation failed through gh generated notes with HTTP 404. The release was recovered with explicit notes. Remove the generated-notes API path and add a regression test so future release runs use the known-good explicit-notes path.
1 parent bc90549 commit 60fa38d

2 files changed

Lines changed: 10 additions & 1 deletion

File tree

‎.github/workflows/package.yml‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -496,7 +496,6 @@ jobs:
496496
gh release create "$tag" "${assets[@]}" \
497497
--repo "$GITHUB_REPOSITORY" \
498498
--title "$tag" \
499-
--generate-notes \
500499
--notes "Published distributions and release metadata for $tag. See CHANGELOG.md for the reviewed release notes." \
501500
|| create_status=$?
502501

‎tests/test_package_workflow.py‎

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,16 @@ def test_package_workflow_does_not_replace_published_release_assets() -> None:
4646
assert "--clobber" not in workflow
4747

4848

49+
def test_package_workflow_uses_explicit_release_notes() -> None:
50+
workflow = (Path(__file__).resolve().parents[1] / ".github/workflows/package.yml").read_text(encoding="utf-8")
51+
52+
assert "--generate-notes" not in workflow
53+
assert (
54+
'--notes "Published distributions and release metadata for $tag. See CHANGELOG.md for the reviewed release notes."'
55+
in workflow
56+
)
57+
58+
4959
def test_package_workflow_gates_writes_on_release_provenance() -> None:
5060
workflow = (Path(__file__).resolve().parents[1] / ".github/workflows/package.yml").read_text(encoding="utf-8")
5161
jobs = yaml.safe_load(workflow)["jobs"]

0 commit comments

Comments
 (0)