2023-06-22 14:21:42 +00:00
|
|
|
const cp = require('node:child_process');
|
|
|
|
const fs = require('node:fs');
|
|
|
|
const path = require('node:path');
|
2019-06-05 23:30:39 +00:00
|
|
|
|
2020-03-20 20:28:31 +00:00
|
|
|
const YARN_VERSION = /'yarn_version': '(.+?)'/.exec(fs.readFileSync(path.resolve(__dirname, '../DEPS'), 'utf8'))[1];
|
2023-05-29 08:44:09 +00:00
|
|
|
const NPX_CMD = process.platform === 'win32' ? 'npx.cmd' : 'npx';
|
2019-06-05 23:30:39 +00:00
|
|
|
|
2023-05-29 08:44:09 +00:00
|
|
|
if (require.main === module) {
|
2019-06-05 23:30:39 +00:00
|
|
|
const child = cp.spawn(NPX_CMD, [`yarn@${YARN_VERSION}`, ...process.argv.slice(2)], {
|
2020-11-24 05:26:54 +00:00
|
|
|
stdio: 'inherit',
|
|
|
|
env: {
|
|
|
|
...process.env,
|
|
|
|
npm_config_yes: 'true'
|
2024-04-22 13:48:43 +00:00
|
|
|
},
|
|
|
|
shell: process.platform === 'win32'
|
2020-03-20 20:28:31 +00:00
|
|
|
});
|
2019-06-05 23:30:39 +00:00
|
|
|
|
2020-03-20 20:28:31 +00:00
|
|
|
child.on('exit', code => process.exit(code));
|
2019-06-05 23:30:39 +00:00
|
|
|
}
|
2023-05-29 08:44:09 +00:00
|
|
|
|
|
|
|
exports.YARN_VERSION = YARN_VERSION;
|