2021-04-15 15:33:00 +02:00

48 lines
1.2 KiB
JavaScript

/**
* Copyright (c) 2020 Gitpod GmbH. All rights reserved.
* Licensed under the GNU Affero General Public License (AGPL).
* See License-AGPL.txt in the project root for license information.
*/
// @ts-check
const fs = require('fs');
const path = require('path');
const child_process = require('child_process');
const qualifier = process.argv[2];
const rootDir = process.cwd();
const pckDir = path.join(rootDir, process.argv[3]);
if (process.env.DO_PUBLISH === "false") {
console.warn('Skipping publishing per request.');
process.exit(0);
}
if (process.env.NPM_AUTH_TOKEN) {
fs.writeFileSync(path.join(pckDir, '.npmrc'), `//registry.npmjs.org/:_authToken=${process.env.NPM_AUTH_TOKEN}\n`, 'utf-8');
} else {
console.warn('NPM_AUTH_TOKEN env variable is not set');
}
const pck = JSON.parse(fs.readFileSync(path.join(pckDir, 'package.json'), 'utf-8'));
const tag = qualifier.substr(0, qualifier.lastIndexOf('.'));
child_process.execSync([
"yarn",
"--cwd",
pckDir,
"publish",
"--new-version",
`${pck.version}-${qualifier}`,
"--tag",
tag,
"--access",
"public",
"--ignore-scripts"
].join(" "), { stdio: 'inherit' });