improve release script safety

This commit is contained in:
SrGooglo 2023-04-27 00:42:52 +00:00
parent 7a08794de5
commit 2331e578f7
2 changed files with 25 additions and 5 deletions

View File

@ -126,6 +126,22 @@ async function uploadAssets({ release, bundlePath }) {
}
async function main() {
// check if no GITHUB_TOKEN env
if (!process.env.GITHUB_TOKEN) {
console.error("🆘 Missing GITHUB_TOKEN env")
return false
}
// check if is any changes pending to commit
const gitStatus = child_process.execSync("git status --porcelain", {
cwd: process.cwd()
}).toString().trim()
if (gitStatus.length > 0) {
console.error("🆘 There are pending changes to commit, please commit first.")
return false
}
let currentVersion = packagejson.version
// check if currentVersion match with current latest release on github
@ -141,8 +157,12 @@ async function main() {
if (process.argv.includes("--bump")) {
const bumpType = process.argv[process.argv.indexOf("--bump") + 1]
const newVersion = await bumpVersion(bumpType, 1).catch((err) => {
console.error(`🆘 Failed to bump version: ${err}`)
const newVersion = await bumpVersion({
root: process.cwd(),
type: bumpType,
count: 1
}).catch((error) => {
console.error(`🆘 Failed to bump version >`, error)
return false
})

View File

@ -23,7 +23,7 @@ async function bumpVersion({
let newVersion = rootPkgjson.version
newVersion = rootPkgjson.version.split(".")
newVersion = newVersion.split(".")
switch (type) {
case "patch":
@ -39,7 +39,7 @@ async function bumpVersion({
newVersion[2] = 0
break
default:
console.error("Invalid version type")
console.error("Cannot bump version, invalid type")
return false
}
@ -101,7 +101,7 @@ async function bumpVersion({
continue
}
return await fs.writeFileSync(path.resolve(packagesPath, package, "package.json"), JSON.stringify(pkgjson, null, 4))
await fs.writeFileSync(path.resolve(packagesPath, package, "package.json"), JSON.stringify(pkgjson, null, 4))
}
// write root package.json