From 07d3afcd2afab8ac0606a44ebe8034bfd2b1d5b1 Mon Sep 17 00:00:00 2001 From: Rhys Arkins <rhys@arkins.net> Date: Fri, 5 Jun 2020 07:30:13 +0200 Subject: [PATCH] feat(npm): call lerna directly instead of via npx (#6434) BREAKING CHANGE: If installing renovate from npm, and also using lerna, then you now must install lerna prior to running renovate. --- .../npm/post-update/__snapshots__/lerna.spec.ts.snap | 12 ++++++------ lib/manager/npm/post-update/lerna.ts | 5 ++--- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/lib/manager/npm/post-update/__snapshots__/lerna.spec.ts.snap b/lib/manager/npm/post-update/__snapshots__/lerna.spec.ts.snap index 09a18a3414..3bf5608e95 100644 --- a/lib/manager/npm/post-update/__snapshots__/lerna.spec.ts.snap +++ b/lib/manager/npm/post-update/__snapshots__/lerna.spec.ts.snap @@ -20,7 +20,7 @@ Array [ }, }, Object { - "cmd": "npx lerna@latest bootstrap --no-ci -- --no-audit --package-lock-only", + "cmd": "lerna bootstrap --no-ci -- --no-audit --package-lock-only", "options": Object { "cwd": "some-dir", "encoding": "utf-8", @@ -59,7 +59,7 @@ Array [ }, }, Object { - "cmd": "npx lerna@latest bootstrap --no-ci -- --ignore-scripts --no-audit --package-lock-only", + "cmd": "lerna bootstrap --no-ci -- --ignore-scripts --no-audit --package-lock-only", "options": Object { "cwd": "some-dir", "encoding": "utf-8", @@ -98,7 +98,7 @@ Array [ }, }, Object { - "cmd": "npx lerna@2.0.0 bootstrap --no-ci -- --ignore-scripts --no-audit --package-lock-only", + "cmd": "lerna bootstrap --no-ci -- --ignore-scripts --no-audit --package-lock-only", "options": Object { "cwd": "some-dir", "encoding": "utf-8", @@ -137,7 +137,7 @@ Array [ }, }, Object { - "cmd": "npx lerna@2.0.0 bootstrap --no-ci -- --ignore-scripts --ignore-engines --ignore-platform", + "cmd": "lerna bootstrap --no-ci -- --ignore-scripts --ignore-engines --ignore-platform", "options": Object { "cwd": "some-dir", "encoding": "utf-8", @@ -176,7 +176,7 @@ Array [ }, }, Object { - "cmd": "npx lerna@latest bootstrap --no-ci -- --ignore-scripts --no-audit --package-lock-only", + "cmd": "lerna bootstrap --no-ci -- --ignore-scripts --no-audit --package-lock-only", "options": Object { "cwd": "some-dir", "encoding": "utf-8", @@ -215,7 +215,7 @@ Array [ }, }, Object { - "cmd": "npx lerna@2.0.0 bootstrap --no-ci -- --ignore-scripts --no-audit", + "cmd": "lerna bootstrap --no-ci -- --ignore-scripts --no-audit", "options": Object { "cwd": "some-dir", "encoding": "utf-8", diff --git a/lib/manager/npm/post-update/lerna.ts b/lib/manager/npm/post-update/lerna.ts index 214765c5bb..41e79c18a6 100644 --- a/lib/manager/npm/post-update/lerna.ts +++ b/lib/manager/npm/post-update/lerna.ts @@ -92,9 +92,8 @@ export async function generateLockFiles( lernaVersion = 'latest'; } logger.debug('Using lerna version ' + lernaVersion); - cmd.push( - `npx lerna@${quote(lernaVersion)} bootstrap --no-ci -- ${cmdOptions}` - ); + preCommands.push(`npm i -g lerna@${quote(lernaVersion)}`); + cmd.push(`lerna bootstrap --no-ci -- ${cmdOptions}`); await exec(cmd, execOptions); } catch (err) /* istanbul ignore next */ { logger.debug( -- GitLab