Skip to content

Commit

Permalink
[compiler] Clean up publish script
Browse files Browse the repository at this point in the history
Few small tweaks to make it easier to run adhoc publishes
  • Loading branch information
poteto committed Oct 16, 2024
1 parent a3d9ea0 commit 26ccb3c
Showing 1 changed file with 25 additions and 25 deletions.
50 changes: 25 additions & 25 deletions compiler/scripts/release/publish.js
Original file line number Diff line number Diff line change
Expand Up @@ -59,12 +59,14 @@ async function main() {
type: 'boolean',
default: false,
})
.option('tags', {
description: 'Tags to publish to npm',
type: 'string',
.option('tag', {
description: 'Tag to publish to npm',
type: 'choices',
choices: ['experimental', 'beta'],
default: 'experimental',
})
.help('help')
.strict()
.parseSync();

if (argv.debug === false) {
Expand Down Expand Up @@ -125,7 +127,7 @@ async function main() {
files: {exclude: ['.DS_Store']},
});
const truncatedHash = hash.slice(0, 7);
const newVersion = `0.0.0-experimental-${truncatedHash}-${dateString}`;
const newVersion = `0.0.0-${argv.tag}-${truncatedHash}-${dateString}`;

for (const pkgName of pkgNames) {
const pkgDir = path.resolve(__dirname, `../../packages/${pkgName}`);
Expand Down Expand Up @@ -179,29 +181,27 @@ async function main() {
spinner.succeed(`Successfully published ${pkgName} to npm`);

spinner.start('Pushing tags to npm');
if (typeof argv.tags === 'string') {
for (const tag of argv.tags.split(',')) {
try {
let opts = ['dist-tag', 'add', `${pkgName}@${newVersion}`, tag];
if (otp != null) {
opts.push(`--otp=${otp}`);
}
if (argv.debug === true) {
spinner.info(`dry-run: npm ${opts.join(' ')}`);
} else {
await spawnHelper('npm', opts, {
cwd: pkgDir,
stdio: 'inherit',
});
}
} catch (e) {
spinner.fail(e.toString());
throw e;
if (typeof argv.tag === 'string') {
try {
let opts = ['dist-tag', 'add', `${pkgName}@${newVersion}`, tag];
if (otp != null) {
opts.push(`--otp=${otp}`);
}
spinner.succeed(
`Successfully pushed dist-tag ${tag} for ${pkgName} to npm`
);
if (argv.debug === true) {
spinner.info(`dry-run: npm ${opts.join(' ')}`);
} else {
await spawnHelper('npm', opts, {
cwd: pkgDir,
stdio: 'inherit',
});
}
} catch (e) {
spinner.fail(e.toString());
throw e;
}
spinner.succeed(
`Successfully pushed dist-tag ${tag} for ${pkgName} to npm`
);
}
}

Expand Down

0 comments on commit 26ccb3c

Please sign in to comment.