Keep prereleases in draft until release assets finish uploading (#54716)

## Why

Prereleases were published before their assets finished uploading, exposing incomplete releases.

## What changed

Create new prereleases as drafts, matching stable releases, and publish them only after all asset uploads succeed. Publishing a draft emits a `published` event rather than a `prereleased` event.

GitOrigin-RevId: 0d1c52038bb9b7beb4b5b9bf52f0ef4c3734de61
This commit is contained in:
ioanbudea-OAI
2026-10-16 21:52:47 +00:00
committed by copyberry
parent 3076caafdf
commit 859bbc87fc
+3 -6
View File
@@ -1775,13 +1775,10 @@ jobs:
--prerelease="$PRERELEASE"
)
if [[ "$exists" == false ]]; then
# Prereleases must be created directly to keep prereleased events.
draft=true
if [[ "$PRERELEASE" == true ]]; then
draft=false
fi
# Keep stable releases and prereleases private until all uploads succeed.
# Publishing a draft emits published rather than prereleased events.
gh release create "$GITHUB_REF_NAME" "${release_args[@]}" \
--draft="$draft" --verify-tag --latest=false
--draft=true --verify-tag --latest=false
fi
mapfile -d '' assets < <(find dist -type f -print0 | sort -z)