Skip to content

Commit 8d34220

Browse files
committed
fix: Add check for gh
1 parent b79f49e commit 8d34220

File tree

1 file changed

+21
-8
lines changed

1 file changed

+21
-8
lines changed

scripts/buildReleaseScript.ts

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,19 @@ function buildHandler({
7171
}
7272
}
7373

74+
let ghCmd = 'gh';
75+
try {
76+
await exec('gh --version');
77+
} catch {
78+
logger.log('Installing gh (GitHub CLI)...');
79+
await exec('brew install gh');
80+
try {
81+
await exec('brew install gh');
82+
} catch {
83+
ghCmd = 'gh';
84+
}
85+
}
86+
7487
const newVersion = semver.inc(localVersion, versionIncrement);
7588

7689
if (!newVersion) {
@@ -92,6 +105,12 @@ function buildHandler({
92105
process.exit(EXIT_CODES.SUCCESS);
93106
}
94107

108+
logger.log(`\nUpdating version to ${newVersion}...`);
109+
await exec(
110+
`yarn version --no-git-tag-version --new-version ${newVersion}`
111+
);
112+
logger.success('Version updated in package.json');
113+
95114
const userHasTested = await confirm({
96115
message: 'Have you tested the pre-release package locally?',
97116
});
@@ -132,12 +151,6 @@ function buildHandler({
132151
}
133152
}
134153

135-
logger.log(`\nUpdating version to ${newVersion}...`);
136-
await exec(
137-
`yarn version --no-git-tag-version --new-version ${newVersion}`
138-
);
139-
logger.success('Version updated in package.json');
140-
141154
logger.log(
142155
'\nPackaging regular release (this will overwrite the pre-release .vsix)...'
143156
);
@@ -186,13 +199,13 @@ function buildHandler({
186199

187200
logger.log('\nCreating draft pull request...');
188201
const { stdout: prUrl } = await exec(
189-
`gh pr create --draft --base ${mainBranch} --title "Release v${newVersion}" --body "## Release v${newVersion}"`
202+
`${ghCmd} pr create --draft --base ${mainBranch} --title "Release v${newVersion}" --body "## Release v${newVersion}"`
190203
);
191204
logger.success(`Draft PR created: ${prUrl.trim()}`);
192205

193206
logger.log('\nCreating draft GitHub release...');
194207
const { stdout: releaseUrl } = await exec(
195-
`gh release create v${newVersion} --title "Version ${newVersion}" --notes "" --draft`
208+
`${ghCmd} release create v${newVersion} --title "Version ${newVersion}" --notes "" --draft`
196209
);
197210
logger.success(`Draft GitHub release created: ${releaseUrl.trim()}`);
198211

0 commit comments

Comments
 (0)