From ceb7c22e042f5185c58867d1daa8f3ea063b4ba4 Mon Sep 17 00:00:00 2001
From: Rhys Arkins <rhys@arkins.net>
Date: Thu, 25 Jun 2020 07:43:15 +0200
Subject: [PATCH] fix(lerna): ignore scripts (#6581)

---
 .../npm/post-update/__snapshots__/lerna.spec.ts.snap   | 10 +++++-----
 lib/manager/npm/post-update/lerna.ts                   |  5 ++++-
 2 files changed, 9 insertions(+), 6 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 3bf5608e95..1a1bed7e54 100644
--- a/lib/manager/npm/post-update/__snapshots__/lerna.spec.ts.snap
+++ b/lib/manager/npm/post-update/__snapshots__/lerna.spec.ts.snap
@@ -59,7 +59,7 @@ Array [
     },
   },
   Object {
-    "cmd": "lerna bootstrap --no-ci -- --ignore-scripts  --no-audit --package-lock-only",
+    "cmd": "lerna bootstrap --no-ci --ignore-scripts -- --ignore-scripts  --no-audit --package-lock-only",
     "options": Object {
       "cwd": "some-dir",
       "encoding": "utf-8",
@@ -98,7 +98,7 @@ Array [
     },
   },
   Object {
-    "cmd": "lerna bootstrap --no-ci -- --ignore-scripts  --no-audit --package-lock-only",
+    "cmd": "lerna bootstrap --no-ci --ignore-scripts -- --ignore-scripts  --no-audit --package-lock-only",
     "options": Object {
       "cwd": "some-dir",
       "encoding": "utf-8",
@@ -137,7 +137,7 @@ Array [
     },
   },
   Object {
-    "cmd": "lerna bootstrap --no-ci -- --ignore-scripts --ignore-engines --ignore-platform",
+    "cmd": "lerna bootstrap --no-ci --ignore-scripts -- --ignore-scripts --ignore-engines --ignore-platform",
     "options": Object {
       "cwd": "some-dir",
       "encoding": "utf-8",
@@ -176,7 +176,7 @@ Array [
     },
   },
   Object {
-    "cmd": "lerna bootstrap --no-ci -- --ignore-scripts  --no-audit --package-lock-only",
+    "cmd": "lerna bootstrap --no-ci --ignore-scripts -- --ignore-scripts  --no-audit --package-lock-only",
     "options": Object {
       "cwd": "some-dir",
       "encoding": "utf-8",
@@ -215,7 +215,7 @@ Array [
     },
   },
   Object {
-    "cmd": "lerna bootstrap --no-ci -- --ignore-scripts  --no-audit",
+    "cmd": "lerna bootstrap --no-ci --ignore-scripts -- --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 41e79c18a6..2a7607ecf9 100644
--- a/lib/manager/npm/post-update/lerna.ts
+++ b/lib/manager/npm/post-update/lerna.ts
@@ -55,9 +55,12 @@ export async function generateLockFiles(
       logger.warn({ lernaClient }, 'Unknown lernaClient');
       return { error: false };
     }
+    let lernaCommand = `lerna bootstrap --no-ci --ignore-scripts -- `;
     if (global.trustLevel === 'high' && config.ignoreScripts !== false) {
       cmdOptions = cmdOptions.replace('--ignore-scripts ', '');
+      lernaCommand = lernaCommand.replace('--ignore-scripts ', '');
     }
+    lernaCommand += cmdOptions;
     const tagConstraint = await getNodeConstraint(config);
     const execOptions: ExecOptions = {
       cwd,
@@ -93,7 +96,7 @@ export async function generateLockFiles(
     }
     logger.debug('Using lerna version ' + lernaVersion);
     preCommands.push(`npm i -g lerna@${quote(lernaVersion)}`);
-    cmd.push(`lerna bootstrap --no-ci -- ${cmdOptions}`);
+    cmd.push(lernaCommand);
     await exec(cmd, execOptions);
   } catch (err) /* istanbul ignore next */ {
     logger.debug(
-- 
GitLab