c4aeb17245
fix: EINVAL when spawning on Windows
21 lines
638 B
JavaScript
21 lines
638 B
JavaScript
const cp = require('node:child_process');
|
|
const fs = require('node:fs');
|
|
const path = require('node:path');
|
|
|
|
const YARN_VERSION = /'yarn_version': '(.+?)'/.exec(fs.readFileSync(path.resolve(__dirname, '../DEPS'), 'utf8'))[1];
|
|
const NPX_CMD = process.platform === 'win32' ? 'npx.cmd' : 'npx';
|
|
|
|
if (require.main === module) {
|
|
const child = cp.spawn(NPX_CMD, [`yarn@${YARN_VERSION}`, ...process.argv.slice(2)], {
|
|
stdio: 'inherit',
|
|
env: {
|
|
...process.env,
|
|
npm_config_yes: 'true'
|
|
},
|
|
shell: process.platform === 'win32'
|
|
});
|
|
|
|
child.on('exit', code => process.exit(code));
|
|
}
|
|
|
|
exports.YARN_VERSION = YARN_VERSION;
|