From b478141416396da87ac142a23b6e36e2a388543d Mon Sep 17 00:00:00 2001 From: Louis Lam Date: Fri, 5 Sep 2025 12:46:07 +0800 Subject: [PATCH] Fix: add check for current branch to ensure it's "release" --- extra/release/beta.mjs | 5 ++++- extra/release/final.mjs | 5 ++++- extra/release/lib.mjs | 13 +++++++++++++ 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/extra/release/beta.mjs b/extra/release/beta.mjs index 7ea13b9b4..f629f2c3f 100644 --- a/extra/release/beta.mjs +++ b/extra/release/beta.mjs @@ -8,7 +8,7 @@ import { checkVersionFormat, getRepoNames, pressAnyKey, - execSync, uploadArtifacts, + execSync, uploadArtifacts, checkReleaseBranch, } from "./lib.mjs"; import semver from "semver"; @@ -23,6 +23,9 @@ if (!githubToken) { process.exit(1); } +// Check if the current branch is "release" +checkReleaseBranch(); + // Check if the version is a valid semver checkVersionFormat(version); diff --git a/extra/release/final.mjs b/extra/release/final.mjs index bf0ec2b0c..73c5a4cab 100644 --- a/extra/release/final.mjs +++ b/extra/release/final.mjs @@ -7,7 +7,7 @@ import { checkTagExists, checkVersionFormat, getRepoNames, - pressAnyKey, execSync, uploadArtifacts + pressAnyKey, execSync, uploadArtifacts, checkReleaseBranch } from "./lib.mjs"; const repoNames = getRepoNames(); @@ -21,6 +21,9 @@ if (!githubToken) { process.exit(1); } +// Check if the current branch is "release" +checkReleaseBranch(); + // Check if the version is a valid semver checkVersionFormat(version); diff --git a/extra/release/lib.mjs b/extra/release/lib.mjs index 81b9f11b3..e390ce820 100644 --- a/extra/release/lib.mjs +++ b/extra/release/lib.mjs @@ -249,3 +249,16 @@ export function execSync(cmd) { console.info(`[DRY RUN] ${cmd}`); } } + +/** + * Check if the current branch is "release" + * @returns {void} + */ +export function checkReleaseBranch() { + const res = childProcess.spawnSync("git", [ "rev-parse", "--abbrev-ref", "HEAD" ]); + const branch = res.stdout.toString().trim(); + if (branch !== "release") { + console.error(`Current branch is ${branch}, please switch to "release" branch`); + process.exit(1); + } +}