mirror of
https://github.com/balena-io/balena-cli.git
synced 2025-04-07 19:34:13 +00:00
Patch oclif to use "npx npm@6.9.0 install" if npm is older than 6.9.0
Change-type: patch Signed-off-by: Paulo Castro <paulo@balena.io>
This commit is contained in:
parent
7c750f9e43
commit
05aaed07b2
@ -48,7 +48,7 @@ index a9d4276..75c2f8b 100644
|
||||
exports.default = PackWin;
|
||||
const scripts = {
|
||||
diff --git a/node_modules/@oclif/dev-cli/lib/tarballs/build.js b/node_modules/@oclif/dev-cli/lib/tarballs/build.js
|
||||
index 3e613e0..c73a04c 100644
|
||||
index 3e613e0..129d041 100644
|
||||
--- a/node_modules/@oclif/dev-cli/lib/tarballs/build.js
|
||||
+++ b/node_modules/@oclif/dev-cli/lib/tarballs/build.js
|
||||
@@ -17,8 +17,11 @@ const pack = async (from, to) => {
|
||||
@ -93,20 +93,22 @@ index 3e613e0..c73a04c 100644
|
||||
const updatePJSON = async () => {
|
||||
qq.cd(c.workspace());
|
||||
const pjson = await qq.readJSON('package.json');
|
||||
@@ -55,7 +80,11 @@ async function build(c, options = {}) {
|
||||
if (!await qq.exists(lockpath)) {
|
||||
@@ -56,7 +81,13 @@ async function build(c, options = {}) {
|
||||
lockpath = qq.join(c.root, 'npm-shrinkwrap.json');
|
||||
}
|
||||
- await qq.cp(lockpath, '.');
|
||||
+ try {
|
||||
+ await qq.cp(lockpath, '.');
|
||||
+ } catch (err) {
|
||||
+ console.log('WARNING: found neiter package-lock.json nor npm-shrinkwrap.json')
|
||||
await qq.cp(lockpath, '.');
|
||||
- await qq.x('npm install --production');
|
||||
+
|
||||
+ const npmVersion = await qq.x.stdout('npm', ['--version']);
|
||||
+ if (require('semver').lt(npmVersion, '6.9.0')) {
|
||||
+ await qq.x('npx npm@6.9.0 install --production');
|
||||
+ } else {
|
||||
+ await qq.x('npm install --production');
|
||||
+ }
|
||||
await qq.x('npm install --production');
|
||||
}
|
||||
};
|
||||
@@ -71,7 +100,8 @@ async function build(c, options = {}) {
|
||||
const buildTarget = async (target) => {
|
||||
@@ -71,7 +102,8 @@ async function build(c, options = {}) {
|
||||
output: path.join(workspace, 'bin', 'node'),
|
||||
platform: target.platform,
|
||||
arch: target.arch,
|
||||
@ -116,7 +118,7 @@ index 3e613e0..c73a04c 100644
|
||||
});
|
||||
if (options.pack === false)
|
||||
return;
|
||||
@@ -124,7 +154,8 @@ async function build(c, options = {}) {
|
||||
@@ -124,7 +156,8 @@ async function build(c, options = {}) {
|
||||
await qq.writeJSON(c.dist(config.s3Key('manifest')), manifest);
|
||||
};
|
||||
log_1.log(`gathering workspace for ${config.bin} to ${c.workspace()}`);
|
||||
|
@ -1,5 +1,5 @@
|
||||
diff --git a/node_modules/qqjs/node_modules/execa/index.js b/node_modules/qqjs/node_modules/execa/index.js
|
||||
index 06f3969..7ab1b66 100644
|
||||
index 06f3969..8bca191 100644
|
||||
--- a/node_modules/qqjs/node_modules/execa/index.js
|
||||
+++ b/node_modules/qqjs/node_modules/execa/index.js
|
||||
@@ -14,6 +14,17 @@ const stdio = require('./lib/stdio');
|
||||
@ -20,7 +20,7 @@ index 06f3969..7ab1b66 100644
|
||||
function handleArgs(cmd, args, opts) {
|
||||
let parsed;
|
||||
|
||||
@@ -104,13 +115,21 @@ function handleShell(fn, cmd, opts) {
|
||||
@@ -104,13 +115,22 @@ function handleShell(fn, cmd, opts) {
|
||||
|
||||
opts = Object.assign({}, opts);
|
||||
|
||||
@ -38,12 +38,23 @@ index 06f3969..7ab1b66 100644
|
||||
opts.windowsVerbatimArguments = true;
|
||||
}
|
||||
|
||||
+ console.log(`[patched execa] handleShell file="${file}" args="[${args}]"`);
|
||||
+ const argStr = (args && args.length) ? `["${args.join('", "')}"]` : args;
|
||||
+ console.log(`[patched execa] handleShell file="${file}" args=${argStr}`);
|
||||
+
|
||||
if (opts.shell) {
|
||||
file = opts.shell;
|
||||
delete opts.shell;
|
||||
@@ -364,3 +383,7 @@ module.exports.sync = (cmd, args, opts) => {
|
||||
@@ -199,6 +219,9 @@ module.exports = (cmd, args, opts) => {
|
||||
const maxBuffer = parsed.opts.maxBuffer;
|
||||
const joinedCmd = joinCmd(cmd, args);
|
||||
|
||||
+ const argStr = (args && args.length) ? `["${args.join('", "')}"]` : args;
|
||||
+ console.log(`[patched execa] parsed.cmd="${parsed.cmd}" parsed.args=${argStr}`);
|
||||
+
|
||||
let spawned;
|
||||
try {
|
||||
spawned = childProcess.spawn(parsed.cmd, parsed.args, parsed.opts);
|
||||
@@ -364,3 +387,7 @@ module.exports.sync = (cmd, args, opts) => {
|
||||
module.exports.shellSync = (cmd, opts) => handleShell(module.exports.sync, cmd, opts);
|
||||
|
||||
module.exports.spawn = util.deprecate(module.exports, 'execa.spawn() is deprecated. Use execa() instead.');
|
||||
|
Loading…
x
Reference in New Issue
Block a user