fix: require existing release tag

This commit is contained in:
guokexin.02
2026-07-30 19:43:11 +08:00
parent 4fb9961e1d
commit c31875a73c
4 changed files with 7 additions and 6 deletions

View File

@@ -278,9 +278,9 @@ jobs:
echo "Could not determine whether the Release already exists." >&2
exit 1
fi
args=("$TAG" --title "$TAG" --draft)
args=("$TAG" --target "$SOURCE_SHA" --title "$TAG" --draft)
[[ "$PRERELEASE" != "true" ]] || args+=(--prerelease)
gh release create "${args[@]}" --notes-file "$release_notes"
gh release create "${args[@]}" --verify-tag --notes-file "$release_notes"
verify_release_metadata "$(gh release view "$TAG" --json isDraft,isPrerelease,targetCommitish)"
fi
gh release edit "$TAG" --notes-file "$release_notes"

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "@larksuite/cli",
"version": "1.0.79-beta.2",
"version": "1.0.79-beta.3",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@larksuite/cli",
"version": "1.0.79-beta.2",
"version": "1.0.79-beta.3",
"cpu": [
"x64",
"arm64",

View File

@@ -1,6 +1,6 @@
{
"name": "@larksuite/cli",
"version": "1.0.79-beta.2",
"version": "1.0.79-beta.3",
"description": "The official CLI for Lark/Feishu open platform",
"bin": {
"lark-cli": "scripts/run.js"

View File

@@ -154,7 +154,8 @@ draft_step = jobs.fetch("create-draft-release").fetch("steps").find { |step| ste
draft_run = draft_step&.fetch("run", nil)
fail("Draft Release creation must write generated release notes") unless draft_run&.include?("--notes-file")
fail("Draft Release reuse must validate target commit and prerelease state") unless draft_run&.include?("targetCommitish") && draft_run.include?("isPrerelease")
fail("Draft Release creation must derive its target from the existing tag") if draft_run&.include?("--target")
fail("Draft Release creation must target the validated source commit") unless draft_run&.include?("--target \"$SOURCE_SHA\"")
fail("Draft Release creation must require the existing remote tag") unless draft_run&.include?("--verify-tag")
github_steps = jobs.fetch("publish-github").fetch("steps")
github_check = github_steps.find { |step| step["name"] == "Verify Draft assets match the candidate" }