puppeteer/utils/apply_next_version.js
2022-05-09 11:17:24 +00:00

32 lines
1.1 KiB
JavaScript

const path = require('path');
const fs = require('fs');
const execSync = require('child_process').execSync;
// Compare current HEAD to upstream main SHA.
// If they are not equal - refuse to publish since
// we're not tip-of-tree.
const upstream_sha = execSync(
`git ls-remote https://github.com/puppeteer/puppeteer --tags main | cut -f1`
).toString('utf8');
const current_sha = execSync(`git rev-parse HEAD`).toString('utf8');
if (upstream_sha.trim() !== current_sha.trim()) {
console.log('REFUSING TO PUBLISH: this is not tip-of-tree!');
process.exit(1);
}
const package = require('../package.json');
let version = package.version;
const dashIndex = version.indexOf('-');
if (dashIndex !== -1) version = version.substring(0, dashIndex);
version += '-next.' + Date.now();
console.log('Setting version to ' + version);
package.version = version;
fs.writeFileSync(
path.join(__dirname, '..', 'package.json'),
JSON.stringify(package, undefined, 2) + '\n'
);
console.log(
'IMPORTANT: you should update the pinned version of devtools-protocol to match the new revision.'
);