From abb4b0b264fdb03a7828287221b32be8a1957f12 Mon Sep 17 00:00:00 2001 From: mcasimir Date: Tue, 26 May 2020 15:51:40 +0200 Subject: [PATCH 01/13] chore: use puppeteeer only when needed --- .evergreen/.install_node | 6 +++--- config/karma.conf.base.js | 14 +++----------- config/setup-test-browser.js | 17 +++++++++++++++++ package-lock.json | 6 +++--- package.json | 8 ++++++-- packages/browser-repl/config/karma.conf.js | 5 +++-- 6 files changed, 35 insertions(+), 21 deletions(-) create mode 100644 config/setup-test-browser.js diff --git a/.evergreen/.install_node b/.evergreen/.install_node index 3c8e5cb374..468b56ce73 100644 --- a/.evergreen/.install_node +++ b/.evergreen/.install_node @@ -15,12 +15,12 @@ if [[ $OSTYPE == "cygwin" ]]; then rm -rf npm npx npm.cmd npx.cmd mv node_modules/npm node_modules/npm2 chmod +x ./node.exe - + ./node.exe node_modules/npm2/bin/npm-cli.js i -g npm@latest rm -rf node_modules/npm2/ chmod +x npm.cmd npm cd .. - npm run bootstrap + npm run bootstrap-ci else curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash export NVM_DIR="$HOME/.nvm" @@ -30,5 +30,5 @@ else nvm install $NODE_JS_VERSION nvm alias default $NODE_JS_VERSION npm install -g npm@latest - npm run bootstrap + npm run bootstrap-ci fi diff --git a/config/karma.conf.base.js b/config/karma.conf.base.js index 78296d6e44..2a8decc40f 100644 --- a/config/karma.conf.base.js +++ b/config/karma.conf.base.js @@ -1,14 +1,6 @@ -process.env.CHROME_BIN = require('puppeteer').executablePath(); const os = require('os'); - -const platform = os.platform(); - -const browsers = () => { - if (platform === 'win32') { - return 'Chrome'; - } - return 'HeadlessChrome'; -}; +const setupTestBrowser = require('./setup-test-browser'); +const browser = setupTestBrowser(); /** * Configure Karma. @@ -50,7 +42,7 @@ const configure = (config) => { allowJs: true, }, }, - browsers: [ browsers() ], + browsers: [ browser ], customLaunchers: { HeadlessChrome: { base: 'ChromeHeadless', diff --git a/config/setup-test-browser.js b/config/setup-test-browser.js new file mode 100644 index 0000000000..01eb9473e2 --- /dev/null +++ b/config/setup-test-browser.js @@ -0,0 +1,17 @@ +const os = require('os'); +const fs = require('fs'); + +const platform = os.platform(); + +module.exports = function setupTestBrowser() { + const isWin32 = platform === 'win32'; + const puppeteerChromiumPath = require('puppeteer').executablePath(); + const hasPuppeteerChromium = fs.existsSync(puppeteerChromiumPath); + + if (hasPuppeteerChromium && !isWin32) { + process.env.CHROME_BIN = rpuppeteerChromiumPath; + } + + // Headless chrome has problems in win + return isWin32 ? 'Chrome' : 'HeadlessChrome'; +} diff --git a/package-lock.json b/package-lock.json index fe083a1898..b409069e7c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -6427,9 +6427,9 @@ } }, "cross-spawn": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.2.tgz", - "integrity": "sha512-PD6G8QG3S4FK/XCGFbEQrDqO2AnMMsy0meR7lerlIOHAAbkuavGU/pOqprrlvfTNjvowivTeBsjebAL0NSoMxw==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, "requires": { "path-key": "^3.1.0", diff --git a/package.json b/package.json index 87ef2e469b..a2df1f373a 100644 --- a/package.json +++ b/package.json @@ -4,8 +4,12 @@ "main": "index.js", "bin": "packages/cli-repl/bin/mongosh.js", "scripts": { - "prebootstrap": "npm install", - "bootstrap": "lerna bootstrap --concurrency=1", + "prebootstrap-with-chromium": "npm install", + "bootstrap-with-chromium": "lerna bootstrap --concurrency=1", + "prebootstrap": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 npm install", + "bootstrap": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 lerna bootstrap --concurrency=1", + "prebootstrap-ci": "npm ci", + "bootstrap-ci": "lerna bootstrap --ci --concurrency=1", "clean": "lerna clean -y && rm -Rf node_modules", "check": "lerna run check --since HEAD --exclude-dependents", "check-ci": "lerna run check", diff --git a/packages/browser-repl/config/karma.conf.js b/packages/browser-repl/config/karma.conf.js index dd7ad3ec34..d38dfbedb0 100644 --- a/packages/browser-repl/config/karma.conf.js +++ b/packages/browser-repl/config/karma.conf.js @@ -1,4 +1,5 @@ -process.env.CHROME_BIN = require('puppeteer').executablePath(); +const setupTestBrowser = require('../../../config/setup-test-browser'); +const browser = setupTestBrowser(); const webpackConfigTest = require('./webpack.config.test'); @@ -36,7 +37,7 @@ module.exports = (config) => { reporters: [ 'mocha' ], - browsers: [ 'ChromeHeadless' ], + browsers: [ browser ], singleRun: true, client: { mocha: { From 6ecf2838cee2142c1174970b690b179ca057c78f Mon Sep 17 00:00:00 2001 From: mcasimir Date: Thu, 30 Jul 2020 15:05:06 +0200 Subject: [PATCH 02/13] add bootstrap-without-compass --- package.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/package.json b/package.json index a2df1f373a..6621718e73 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,8 @@ "bootstrap-with-chromium": "lerna bootstrap --concurrency=1", "prebootstrap": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 npm install", "bootstrap": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 lerna bootstrap --concurrency=1", + "prebootstrap-without-compass": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 npm install", + "bootstrap-without-compass": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 lerna bootstrap --ignore @mongodb-js/compass-shell --concurrency=1", "prebootstrap-ci": "npm ci", "bootstrap-ci": "lerna bootstrap --ci --concurrency=1", "clean": "lerna clean -y && rm -Rf node_modules", From d62966948b9587059b644ae47f791839cd67852e Mon Sep 17 00:00:00 2001 From: mcasimir Date: Fri, 31 Jul 2020 12:12:17 +0200 Subject: [PATCH 03/13] move chromium in subpackage --- config/karma.conf.base.js | 61 ---- package-lock.json | 108 +----- package.json | 5 +- packages/browser-repl/config/karma.conf.js | 8 +- .../config}/setup-test-browser.js | 5 +- packages/browser-repl/package-lock.json | 339 ++++++++---------- packages/browser-repl/package.json | 1 + 7 files changed, 157 insertions(+), 370 deletions(-) delete mode 100644 config/karma.conf.base.js rename {config => packages/browser-repl/config}/setup-test-browser.js (82%) diff --git a/config/karma.conf.base.js b/config/karma.conf.base.js deleted file mode 100644 index 2a8decc40f..0000000000 --- a/config/karma.conf.base.js +++ /dev/null @@ -1,61 +0,0 @@ -const os = require('os'); -const setupTestBrowser = require('./setup-test-browser'); -const browser = setupTestBrowser(); - -/** - * Configure Karma. - * - * @param {Config} config - The config. - */ -const configure = (config) => { - config.set({ - externals: { - fs: 'none' - }, - frameworks: [ - 'mocha', - 'karma-typescript' - ], - files: [ - { pattern: 'src/**/*.ts' } - ], - preprocessors: { - 'src/**/*.ts': [ 'karma-typescript' ], - }, - envPreprocessor: [ - ], - reporters: [ - 'mocha', - 'karma-typescript' - ], - karmaTypescriptConfig: { - bundlerOptions: { - constants: { - "process.env": { - 'STITCH_TEST_APP_ID': process.env.STITCH_TEST_APP_ID, - 'STITCH_TEST_SERVICE_NAME': process.env.STITCH_TEST_SERVICE_NAME, - 'PLATFORM': os.platform() - } - } - }, - compilerOptions: { - allowJs: true, - }, - }, - browsers: [ browser ], - customLaunchers: { - HeadlessChrome: { - base: 'ChromeHeadless', - flags: ['--no-sandbox'] - } - }, - singleRun: true, - client: { - mocha: { - timeout: 15000 - } - } - }); -}; - -module.exports = configure; diff --git a/package-lock.json b/package-lock.json index b409069e7c..234a796847 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3515,12 +3515,6 @@ "integrity": "sha512-8+KAKzEvSUdeo+kmqnKrqgeE+LcA0tjYWFY7RPProVYwnqDjukzO+3b6dLD56rYX5TdWejnEOLJYOIeh4CXKuA==", "dev": true }, - "@types/mime-types": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.0.tgz", - "integrity": "sha1-nKUs2jY/aZxpRmwqbM2q2RPqenM=", - "dev": true - }, "@types/minimatch": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", @@ -7795,7 +7789,7 @@ } }, "electron-notarize": { - "version": "github:mongodb-js/electron-notarize#166d7b4ac1126fd7ff969e3498a3b22bb32b4568", + "version": "github:mongodb-js/electron-notarize#a9414f46fba4e7b2a37d83443d131ec99419f4dc", "from": "github:mongodb-js/electron-notarize", "dev": true, "requires": { @@ -9066,35 +9060,6 @@ } } }, - "extract-zip": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", - "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", - "dev": true, - "requires": { - "concat-stream": "^1.6.2", - "debug": "^2.6.9", - "mkdirp": "^0.5.4", - "yauzl": "^2.10.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", @@ -14352,7 +14317,7 @@ "dev": true }, "node-codesign": { - "version": "github:durran/node-codesign#8f7adaf9889a6be26f4fd60efa610967cfdf8730", + "version": "github:durran/node-codesign#92863a258c2108556c0a33284d26f635729041da", "from": "github:durran/node-codesign", "dev": true, "requires": { @@ -16805,12 +16770,6 @@ "genfun": "^5.0.0" } }, - "proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", - "dev": true - }, "prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", @@ -16890,69 +16849,6 @@ "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", "dev": true }, - "puppeteer": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-2.1.1.tgz", - "integrity": "sha512-LWzaDVQkk1EPiuYeTOj+CZRIjda4k2s5w4MK4xoH2+kgWV/SDlkYHmxatDdtYrciHUKSXTsGgPgPP8ILVdBsxg==", - "dev": true, - "requires": { - "@types/mime-types": "^2.1.0", - "debug": "^4.1.0", - "extract-zip": "^1.6.6", - "https-proxy-agent": "^4.0.0", - "mime": "^2.0.3", - "mime-types": "^2.1.25", - "progress": "^2.0.1", - "proxy-from-env": "^1.0.0", - "rimraf": "^2.6.1", - "ws": "^6.1.0" - }, - "dependencies": { - "agent-base": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-5.1.1.tgz", - "integrity": "sha512-TMeqbNl2fMW0nMjTEPOwe3J/PRFP4vqeoNuQMG0HlMrtm5QxKqdvAkZ1pRBQ/ulIyDD5Yq0nJ7YbdD8ey0TO3g==", - "dev": true - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "https-proxy-agent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-4.0.0.tgz", - "integrity": "sha512-zoDhWrkR3of1l9QAL8/scJZyLu8j/gBkcwcaQOZh7Gyh/+uJQzGVETdgT30akuwkpL8HTRfssqI3BZuV18teDg==", - "dev": true, - "requires": { - "agent-base": "5", - "debug": "4" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "ws": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", - "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0" - } - } - } - }, "purgecss": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/purgecss/-/purgecss-1.4.2.tgz", diff --git a/package.json b/package.json index 6621718e73..5e4c3ede2d 100644 --- a/package.json +++ b/package.json @@ -6,9 +6,9 @@ "scripts": { "prebootstrap-with-chromium": "npm install", "bootstrap-with-chromium": "lerna bootstrap --concurrency=1", - "prebootstrap": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 npm install", + "prebootstrap": "npm install", "bootstrap": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 lerna bootstrap --concurrency=1", - "prebootstrap-without-compass": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 npm install", + "prebootstrap-without-compass": "npm install", "bootstrap-without-compass": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 lerna bootstrap --ignore @mongodb-js/compass-shell --concurrency=1", "prebootstrap-ci": "npm ci", "bootstrap-ci": "lerna bootstrap --ci --concurrency=1", @@ -93,7 +93,6 @@ "node-codesign": "durran/node-codesign", "parcel-bundler": "^1.12.4", "pkg": "^4.4.3", - "puppeteer": "^2.0.0", "rimraf": "^3.0.2", "semver": "^7.3.2", "sinon": "^7.5.0", diff --git a/packages/browser-repl/config/karma.conf.js b/packages/browser-repl/config/karma.conf.js index d38dfbedb0..aff3104133 100644 --- a/packages/browser-repl/config/karma.conf.js +++ b/packages/browser-repl/config/karma.conf.js @@ -1,4 +1,4 @@ -const setupTestBrowser = require('../../../config/setup-test-browser'); +const setupTestBrowser = require('./setup-test-browser'); const browser = setupTestBrowser(); const webpackConfigTest = require('./webpack.config.test'); @@ -37,6 +37,12 @@ module.exports = (config) => { reporters: [ 'mocha' ], + customLaunchers: { + HeadlessChrome: { + base: 'ChromeHeadless', + flags: ['--no-sandbox'] + } + }, browsers: [ browser ], singleRun: true, client: { diff --git a/config/setup-test-browser.js b/packages/browser-repl/config/setup-test-browser.js similarity index 82% rename from config/setup-test-browser.js rename to packages/browser-repl/config/setup-test-browser.js index 01eb9473e2..c39c245a0b 100644 --- a/config/setup-test-browser.js +++ b/packages/browser-repl/config/setup-test-browser.js @@ -6,12 +6,13 @@ const platform = os.platform(); module.exports = function setupTestBrowser() { const isWin32 = platform === 'win32'; const puppeteerChromiumPath = require('puppeteer').executablePath(); + // eslint-disable-next-line no-sync const hasPuppeteerChromium = fs.existsSync(puppeteerChromiumPath); if (hasPuppeteerChromium && !isWin32) { - process.env.CHROME_BIN = rpuppeteerChromiumPath; + process.env.CHROME_BIN = puppeteerChromiumPath; } // Headless chrome has problems in win return isWin32 ? 'Chrome' : 'HeadlessChrome'; -} +}; diff --git a/packages/browser-repl/package-lock.json b/packages/browser-repl/package-lock.json index 16971082dc..f3b953a9d7 100644 --- a/packages/browser-repl/package-lock.json +++ b/packages/browser-repl/package-lock.json @@ -2265,6 +2265,12 @@ "@types/istanbul-lib-report": "*" } }, + "@types/mime-types": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.0.tgz", + "integrity": "sha1-nKUs2jY/aZxpRmwqbM2q2RPqenM=", + "dev": true + }, "@types/node": { "version": "14.0.3", "resolved": "https://registry.npmjs.org/@types/node/-/node-14.0.3.tgz", @@ -2664,6 +2670,12 @@ "integrity": "sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA==", "dev": true }, + "agent-base": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-5.1.1.tgz", + "integrity": "sha512-TMeqbNl2fMW0nMjTEPOwe3J/PRFP4vqeoNuQMG0HlMrtm5QxKqdvAkZ1pRBQ/ulIyDD5Yq0nJ7YbdD8ey0TO3g==", + "dev": true + }, "aggregate-error": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", @@ -3129,6 +3141,12 @@ "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", "dev": true }, + "async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", + "dev": true + }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -4015,28 +4033,6 @@ "pkg-up": "^2.0.0" } }, - "bson": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/bson/-/bson-4.0.2.tgz", - "integrity": "sha512-rBdCxMBCg2aR420e1oKUejjcuPZLTibA7zEhWAlliFWEwzuBCC9Dkp5r7VFFIQB2t1WVsvTbohry575mc7Xw5A==", - "dev": true, - "requires": { - "buffer": "^5.1.0", - "long": "^4.0.0" - }, - "dependencies": { - "buffer": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.6.0.tgz", - "integrity": "sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4" - } - } - } - }, "buffer": { "version": "4.9.2", "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", @@ -4056,10 +4052,10 @@ } } }, - "buffer-equal-constant-time": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", - "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=", + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", "dev": true }, "buffer-from": { @@ -5310,12 +5306,6 @@ "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", "dev": true }, - "detect-browser": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/detect-browser/-/detect-browser-3.0.1.tgz", - "integrity": "sha512-L6b76EfUxnoxGHM5Vz7nrshQPIbOHtitDWpGufrp5srQdJrEYi1xpUVZeFbfssWAJvUWo/iDIVlz8hOP4Z8OCw==", - "dev": true - }, "detect-file": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", @@ -5658,15 +5648,6 @@ "safer-buffer": "^2.1.0" } }, - "ecdsa-sig-formatter": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", - "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", - "dev": true, - "requires": { - "safe-buffer": "^5.0.1" - } - }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -6339,6 +6320,35 @@ } } }, + "extract-zip": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", + "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", + "dev": true, + "requires": { + "concat-stream": "^1.6.2", + "debug": "^2.6.9", + "mkdirp": "^0.5.4", + "yauzl": "^2.10.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + } + } + }, "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", @@ -6460,6 +6470,15 @@ } } }, + "fd-slicer": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", + "dev": true, + "requires": { + "pend": "~1.2.0" + } + }, "figgy-pudding": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", @@ -7725,6 +7744,16 @@ "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", "dev": true }, + "https-proxy-agent": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-4.0.0.tgz", + "integrity": "sha512-zoDhWrkR3of1l9QAL8/scJZyLu8j/gBkcwcaQOZh7Gyh/+uJQzGVETdgT30akuwkpL8HTRfssqI3BZuV18teDg==", + "dev": true, + "requires": { + "agent-base": "5", + "debug": "4" + } + }, "iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -8456,32 +8485,6 @@ "graceful-fs": "^4.1.6" } }, - "jsonwebtoken": { - "version": "8.2.1", - "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.2.1.tgz", - "integrity": "sha512-l8rUBr0fqYYwPc8/ZGrue7GiW7vWdZtZqelxo4Sd5lMvuEeCK8/wS54sEo6tJhdZ6hqfutsj6COgC0d1XdbHGw==", - "dev": true, - "requires": { - "jws": "^3.1.4", - "lodash.includes": "^4.3.0", - "lodash.isboolean": "^3.0.3", - "lodash.isinteger": "^4.0.4", - "lodash.isnumber": "^3.0.3", - "lodash.isplainobject": "^4.0.6", - "lodash.isstring": "^4.0.1", - "lodash.once": "^4.0.0", - "ms": "^2.1.1", - "xtend": "^4.0.1" - }, - "dependencies": { - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true - } - } - }, "jsprim": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", @@ -8531,27 +8534,6 @@ } } }, - "jwa": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", - "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", - "dev": true, - "requires": { - "buffer-equal-constant-time": "1.0.1", - "ecdsa-sig-formatter": "1.0.11", - "safe-buffer": "^5.0.1" - } - }, - "jws": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", - "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", - "dev": true, - "requires": { - "jwa": "^1.4.1", - "safe-buffer": "^5.0.1" - } - }, "karma-webpack": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/karma-webpack/-/karma-webpack-4.0.2.tgz", @@ -8785,72 +8767,24 @@ "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=", "dev": true }, - "lodash.includes": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", - "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=", - "dev": true - }, - "lodash.isboolean": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", - "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=", - "dev": true - }, "lodash.isequal": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", "dev": true }, - "lodash.isinteger": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", - "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=", - "dev": true - }, - "lodash.isnumber": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", - "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=", - "dev": true - }, - "lodash.isplainobject": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", - "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=", - "dev": true - }, - "lodash.isstring": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", - "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=", - "dev": true - }, "lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", "dev": true }, - "lodash.once": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", - "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=", - "dev": true - }, "lodash.throttle": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=", "dev": true }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==", - "dev": true - }, "loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -9417,67 +9351,6 @@ "integrity": "sha1-yqrcSFb1pVLWBxIW0kJkJZwiEB4=", "dev": true }, - "mongodb-stitch-browser-core": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/mongodb-stitch-browser-core/-/mongodb-stitch-browser-core-4.8.0.tgz", - "integrity": "sha512-tKzNW+w6VFQOS+opbC8lPjmgJx8H+/4s8qIwM2fcH+GUti+J6hcj3b8Eei7VcyHiWYNsS8S0cx+BypOmILhfeg==", - "dev": true, - "requires": { - "bson": "4.0.2", - "detect-browser": "^3.0.0", - "mongodb-stitch-core-sdk": "^4.8.0", - "whatwg-fetch": "^3.0.0" - }, - "dependencies": { - "whatwg-fetch": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.2.0.tgz", - "integrity": "sha512-SdGPoQMMnzVYThUbSrEvqTlkvC1Ux27NehaJ/GUHBfNrh5Mjg+1/uRyFMwVnxO2MrikMWvWAqUGgQOfVU4hT7w==", - "dev": true - } - } - }, - "mongodb-stitch-browser-sdk": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/mongodb-stitch-browser-sdk/-/mongodb-stitch-browser-sdk-4.8.0.tgz", - "integrity": "sha512-+u5OOwxhGFee2JiS/ocVqR4OQw5wEKCH99w0CJz9l5NqNpQeR1VZRt9HmMLk7k9fn4/LaL5QcdalzA9YA+T8eA==", - "dev": true, - "requires": { - "mongodb-stitch-browser-core": "^4.8.0", - "mongodb-stitch-browser-services-mongodb-remote": "^4.8.0" - } - }, - "mongodb-stitch-browser-services-mongodb-remote": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/mongodb-stitch-browser-services-mongodb-remote/-/mongodb-stitch-browser-services-mongodb-remote-4.8.0.tgz", - "integrity": "sha512-LPtuOufHKzrATNJB+DAdK0LYRvoVaAI+3Oobqx9FI9WAjNY22lwHiJQ7FBFejSEz1YL7Nap6f7Z2P2DlYr0WsA==", - "dev": true, - "requires": { - "mongodb-stitch-browser-core": "^4.8.0", - "mongodb-stitch-core-services-mongodb-remote": "^4.8.0" - } - }, - "mongodb-stitch-core-sdk": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/mongodb-stitch-core-sdk/-/mongodb-stitch-core-sdk-4.8.0.tgz", - "integrity": "sha512-IK6Yh8mGsX7zzgbk6l/4xt8lxYORpEc/rWSaZoNo70h+u0gBcNlOes6TdlqYgzi5Q/mT0gqWI9jhInrg0IvnGQ==", - "dev": true, - "requires": { - "base64-js": "^1.3.0", - "bson": "4.0.2", - "jsonwebtoken": "8.2.1" - } - }, - "mongodb-stitch-core-services-mongodb-remote": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/mongodb-stitch-core-services-mongodb-remote/-/mongodb-stitch-core-services-mongodb-remote-4.8.0.tgz", - "integrity": "sha512-sxhmUqXlcn5152vqyoN7tQnowNKMSHUVms0rXOWXMVoHGf5eK+kqhtuT4haz/daa0pwR9L50NKYBRxOLt3phRg==", - "dev": true, - "requires": { - "bson": "4.0.2", - "mongodb-stitch-core-sdk": "^4.8.0" - } - }, "moo": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.1.tgz", @@ -10269,6 +10142,12 @@ "sha.js": "^2.4.8" } }, + "pend": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=", + "dev": true + }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -10600,6 +10479,12 @@ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, "promise": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", @@ -10688,6 +10573,12 @@ "ipaddr.js": "1.9.1" } }, + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==", + "dev": true + }, "prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", @@ -10762,6 +10653,41 @@ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, + "puppeteer": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-2.1.1.tgz", + "integrity": "sha512-LWzaDVQkk1EPiuYeTOj+CZRIjda4k2s5w4MK4xoH2+kgWV/SDlkYHmxatDdtYrciHUKSXTsGgPgPP8ILVdBsxg==", + "dev": true, + "requires": { + "@types/mime-types": "^2.1.0", + "debug": "^4.1.0", + "extract-zip": "^1.6.6", + "https-proxy-agent": "^4.0.0", + "mime": "^2.0.3", + "mime-types": "^2.1.25", + "progress": "^2.0.1", + "proxy-from-env": "^1.0.0", + "rimraf": "^2.6.1", + "ws": "^6.1.0" + }, + "dependencies": { + "mime": { + "version": "2.4.6", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.6.tgz", + "integrity": "sha512-RZKhC3EmpBchfTGBVb8fb+RL2cWyw/32lshnsETttkBAyAUXSGHxbEJWWRXc751DrIxG1q04b8QwMbAwkRPpUA==", + "dev": true + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, "q": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", @@ -14280,6 +14206,15 @@ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true }, + "ws": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", + "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", + "dev": true, + "requires": { + "async-limiter": "~1.0.0" + } + }, "xtend": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz", @@ -14304,6 +14239,16 @@ "version": "1.10.0", "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==" + }, + "yauzl": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", + "dev": true, + "requires": { + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" + } } } } diff --git a/packages/browser-repl/package.json b/packages/browser-repl/package.json index 1ce35518bc..1f6b0e369b 100644 --- a/packages/browser-repl/package.json +++ b/packages/browser-repl/package.json @@ -71,6 +71,7 @@ "less-loader": "^5.0.0", "mongodb-ace-theme": "^0.0.1", "prop-types": "^15.7.2", + "puppeteer": "^2.0.0", "react": "^16.12.0", "react-ace": "^6.6.0", "react-dom": "^16.12.0", From 6722037968667e5a2aa88c2013cb5c04d2b353b5 Mon Sep 17 00:00:00 2001 From: mcasimir Date: Fri, 31 Jul 2020 12:25:25 +0200 Subject: [PATCH 04/13] Skip compile on bootstrap --- .evergreen/InstallNode.ps1 | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.evergreen/InstallNode.ps1 b/.evergreen/InstallNode.ps1 index 991fc86719..80351d398d 100644 --- a/.evergreen/InstallNode.ps1 +++ b/.evergreen/InstallNode.ps1 @@ -20,8 +20,8 @@ Remove-Item .\npm Remove-Item .\npm.cmd Remove-Item .\npx Remove-Item .\npx.cmd -Move-Item .\node_modules\npm -Destination .\node_modules\npm2 +Move-Item .\node_modules\npm -Destination .\node_modules\npm2 .\node.exe .\node_modules\npm2\bin\npm-cli.js i -g npm@latest Set-Location -Path $PSScriptRoot\..\ -npm run bootstrap +npm run bootstrap-ci diff --git a/package.json b/package.json index 5e4c3ede2d..ce7c79aece 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "prebootstrap-with-chromium": "npm install", "bootstrap-with-chromium": "lerna bootstrap --concurrency=1", "prebootstrap": "npm install", - "bootstrap": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 lerna bootstrap --concurrency=1", + "bootstrap": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 lerna bootstrap --ignore-prepublish --concurrency=1", "prebootstrap-without-compass": "npm install", "bootstrap-without-compass": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 lerna bootstrap --ignore @mongodb-js/compass-shell --concurrency=1", "prebootstrap-ci": "npm ci", From c55f0196f958a0121b1dfa833ab239653878fc94 Mon Sep 17 00:00:00 2001 From: mcasimir Date: Fri, 31 Jul 2020 12:40:32 +0200 Subject: [PATCH 05/13] Ignore prepublish with bootstrap-without-compass --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index ce7c79aece..768af14bac 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "prebootstrap": "npm install", "bootstrap": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 lerna bootstrap --ignore-prepublish --concurrency=1", "prebootstrap-without-compass": "npm install", - "bootstrap-without-compass": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 lerna bootstrap --ignore @mongodb-js/compass-shell --concurrency=1", + "bootstrap-without-compass": "cross-env PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=1 lerna bootstrap --ignore @mongodb-js/compass-shell --ignore-prepublish --concurrency=1", "prebootstrap-ci": "npm ci", "bootstrap-ci": "lerna bootstrap --ci --concurrency=1", "clean": "lerna clean -y && rm -Rf node_modules", From 8f6165e903ee56e2c35b7b6ccefabd0d525beeb4 Mon Sep 17 00:00:00 2001 From: mcasimir Date: Fri, 31 Jul 2020 18:50:49 +0200 Subject: [PATCH 06/13] run bootstrap with right npm version --- .evergreen/InstallNode.ps1 | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/.evergreen/InstallNode.ps1 b/.evergreen/InstallNode.ps1 index 80351d398d..cc1905b5c2 100644 --- a/.evergreen/InstallNode.ps1 +++ b/.evergreen/InstallNode.ps1 @@ -24,4 +24,13 @@ Move-Item .\node_modules\npm -Destination .\node_modules\npm2 .\node.exe .\node_modules\npm2\bin\npm-cli.js i -g npm@latest Set-Location -Path $PSScriptRoot\..\ -npm run bootstrap-ci + +$scriptPath = split-path -parent $MyInvocation.MyCommand.Definition +$SetupEnv = "$scriptPath\SetupEnv.ps1" + +npm --version + +& $SetupEnv + +npm --version +npm run bootstrap \ No newline at end of file From ed01b47b80ae712e327ef5ee44b56eb45cef8447 Mon Sep 17 00:00:00 2001 From: mcasimir Date: Fri, 31 Jul 2020 20:48:20 +0200 Subject: [PATCH 07/13] debug wrong npm version --- .evergreen.yml | 2 ++ .evergreen/InstallNode.ps1 | 5 ++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/.evergreen.yml b/.evergreen.yml index 1fd62372fa..392e60e0d2 100644 --- a/.evergreen.yml +++ b/.evergreen.yml @@ -32,6 +32,8 @@ variables: shell: powershell script: | .\.evergreen\SetupEnv + node --version + npm --version $Env:PUPPETEER_SKIP_CHROMIUM_DOWNLOAD = "true" $Env:EVERGREEN_EXPANSIONS_PATH = $(Join-Path -Path '..' -ChildPath 'tmp/expansions.yaml' -Resolve) npm run release diff --git a/.evergreen/InstallNode.ps1 b/.evergreen/InstallNode.ps1 index cc1905b5c2..0ac812a588 100644 --- a/.evergreen/InstallNode.ps1 +++ b/.evergreen/InstallNode.ps1 @@ -32,5 +32,8 @@ npm --version & $SetupEnv +echo "PATH:" +echo $Env:PATH + npm --version -npm run bootstrap \ No newline at end of file +npm run bootstrap-ci From b63af9d8198ad2351291cbc32a71512d73660bbb Mon Sep 17 00:00:00 2001 From: mcasimir Date: Fri, 31 Jul 2020 21:07:22 +0200 Subject: [PATCH 08/13] prepend node and npm path --- .evergreen/SetupEnv.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.evergreen/SetupEnv.ps1 b/.evergreen/SetupEnv.ps1 index b3915d6116..f827460568 100644 --- a/.evergreen/SetupEnv.ps1 +++ b/.evergreen/SetupEnv.ps1 @@ -1,4 +1,4 @@ $version = "12.4.0" $node_path = "$PSScriptRoot\node-v$version-win-x64\node.exe" $npm_path = "$PSScriptRoot\node-v$version-win-x64\npm.cmd" -$Env:PATH += ";$node_path;$npm_path" +$Env:PATH = "$node_path;$npm_path;$Env:PATH" From 8ff05bf8c0233e63b1011c12640707ad341f1ae5 Mon Sep 17 00:00:00 2001 From: mcasimir Date: Fri, 31 Jul 2020 23:12:51 +0200 Subject: [PATCH 09/13] fix node path --- .evergreen/SetupEnv.ps1 | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.evergreen/SetupEnv.ps1 b/.evergreen/SetupEnv.ps1 index f827460568..353ee7fbea 100644 --- a/.evergreen/SetupEnv.ps1 +++ b/.evergreen/SetupEnv.ps1 @@ -1,4 +1,2 @@ $version = "12.4.0" -$node_path = "$PSScriptRoot\node-v$version-win-x64\node.exe" -$npm_path = "$PSScriptRoot\node-v$version-win-x64\npm.cmd" -$Env:PATH = "$node_path;$npm_path;$Env:PATH" +$Env:PATH = "$PSScriptRoot\node-v$version-win-x64;$npm_path;$Env:PATH" From 440c51161944f90b1144821ad14424ee757430d7 Mon Sep 17 00:00:00 2001 From: mcasimir Date: Fri, 31 Jul 2020 23:31:34 +0200 Subject: [PATCH 10/13] add git-core to path --- .evergreen/SetupEnv.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.evergreen/SetupEnv.ps1 b/.evergreen/SetupEnv.ps1 index 353ee7fbea..9b4d62f4bb 100644 --- a/.evergreen/SetupEnv.ps1 +++ b/.evergreen/SetupEnv.ps1 @@ -1,2 +1,2 @@ $version = "12.4.0" -$Env:PATH = "$PSScriptRoot\node-v$version-win-x64;$npm_path;$Env:PATH" +$Env:PATH = "$PSScriptRoot\node-v$version-win-x64;C:\Program Files\Git\mingw32/libexec/git-core;$Env:PATH" From e25e2855ab95723c4a8496f9daac03c37d0fc021 Mon Sep 17 00:00:00 2001 From: mcasimir Date: Fri, 31 Jul 2020 23:35:19 +0200 Subject: [PATCH 11/13] print node version before check_ps --- .evergreen.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.evergreen.yml b/.evergreen.yml index 392e60e0d2..54a329f078 100644 --- a/.evergreen.yml +++ b/.evergreen.yml @@ -82,6 +82,9 @@ functions: shell: powershell script: | .\.evergreen\SetupEnv + echo "---- check_ps ----" + node --version + npm --version npm run check-ci test: - command: expansions.write From 566869ef76cba866301cddeef29c6e978c99007c Mon Sep 17 00:00:00 2001 From: mcasimir Date: Fri, 31 Jul 2020 23:40:02 +0200 Subject: [PATCH 12/13] fix libexec\git-core path --- .evergreen/SetupEnv.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.evergreen/SetupEnv.ps1 b/.evergreen/SetupEnv.ps1 index 9b4d62f4bb..39c68570ee 100644 --- a/.evergreen/SetupEnv.ps1 +++ b/.evergreen/SetupEnv.ps1 @@ -1,2 +1,2 @@ $version = "12.4.0" -$Env:PATH = "$PSScriptRoot\node-v$version-win-x64;C:\Program Files\Git\mingw32/libexec/git-core;$Env:PATH" +$Env:PATH = "$PSScriptRoot\node-v$version-win-x64;C:\Program Files\Git\mingw32\libexec\git-core;$Env:PATH" From 75a1267c19937ccf879597a0e3e983679e0fb3f2 Mon Sep 17 00:00:00 2001 From: mcasimir Date: Sat, 1 Aug 2020 11:13:09 +0200 Subject: [PATCH 13/13] clean up cygwin, always output versions --- .evergreen.yml | 3 --- .evergreen/.install_node | 46 +++++++++++++------------------------- .evergreen/.setup_env | 17 +++++++------- .evergreen/InstallNode.ps1 | 7 ------ .evergreen/SetupEnv.ps1 | 7 ++++++ 5 files changed, 32 insertions(+), 48 deletions(-) diff --git a/.evergreen.yml b/.evergreen.yml index 54a329f078..392e60e0d2 100644 --- a/.evergreen.yml +++ b/.evergreen.yml @@ -82,9 +82,6 @@ functions: shell: powershell script: | .\.evergreen\SetupEnv - echo "---- check_ps ----" - node --version - npm --version npm run check-ci test: - command: expansions.write diff --git a/.evergreen/.install_node b/.evergreen/.install_node index 468b56ce73..42fc8e53d9 100644 --- a/.evergreen/.install_node +++ b/.evergreen/.install_node @@ -1,34 +1,20 @@ export NODE_JS_VERSION='12.4.0' -if [[ $OSTYPE == "cygwin" ]]; then - echo "Installing nodejs v$NODE_JS_VERSION for windows..." - mkdir .deps - curl -fs \ - -o ".deps/node-v$NODE_JS_VERSION-win-x64.zip" \ - --url "https://nodejs.org/download/release/v$NODE_JS_VERSION/node-v$NODE_JS_VERSION-win-x64.zip" - cd .deps - unzip -q node-v$NODE_JS_VERSION-win-x64.zip - mv node-v$NODE_JS_VERSION-win-x64/* . - rm -rf node-v$NODE_JS_VERSION-win-x64 +curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash +export NVM_DIR="$HOME/.nvm" - echo "Installing npm@latest..." - rm -rf npm npx npm.cmd npx.cmd - mv node_modules/npm node_modules/npm2 - chmod +x ./node.exe +echo "Setting NVM environment home: $NVM_DIR" +[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" +[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" - ./node.exe node_modules/npm2/bin/npm-cli.js i -g npm@latest - rm -rf node_modules/npm2/ - chmod +x npm.cmd npm - cd .. - npm run bootstrap-ci -else - curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash - export NVM_DIR="$HOME/.nvm" - echo "Setting NVM environment home: $NVM_DIR" - [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" - [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" - nvm install $NODE_JS_VERSION - nvm alias default $NODE_JS_VERSION - npm install -g npm@latest - npm run bootstrap-ci -fi +nvm install $NODE_JS_VERSION +nvm alias default $NODE_JS_VERSION +npm install -g npm@latest + +echo "Using node version:" +node --version + +echo "Using npm version:" +npm --version + +npm run bootstrap-ci diff --git a/.evergreen/.setup_env b/.evergreen/.setup_env index 82403570f7..d0f0e8a05b 100755 --- a/.evergreen/.setup_env +++ b/.evergreen/.setup_env @@ -1,8 +1,9 @@ -if [[ $OSTYPE == "cygwin" ]]; then - echo "Setting up Windows environment" -else - export NVM_DIR="$HOME/.nvm" - echo "Setting NVM environment home: $NVM_DIR" - [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" - [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" -fi +export NVM_DIR="$HOME/.nvm" +echo "Setting NVM environment home: $NVM_DIR" +[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" + +echo "Using node version:" +node --version + +echo "Using npm version:" +npm --version diff --git a/.evergreen/InstallNode.ps1 b/.evergreen/InstallNode.ps1 index 0ac812a588..74999454a6 100644 --- a/.evergreen/InstallNode.ps1 +++ b/.evergreen/InstallNode.ps1 @@ -28,12 +28,5 @@ Set-Location -Path $PSScriptRoot\..\ $scriptPath = split-path -parent $MyInvocation.MyCommand.Definition $SetupEnv = "$scriptPath\SetupEnv.ps1" -npm --version - & $SetupEnv - -echo "PATH:" -echo $Env:PATH - -npm --version npm run bootstrap-ci diff --git a/.evergreen/SetupEnv.ps1 b/.evergreen/SetupEnv.ps1 index 39c68570ee..15980e75aa 100644 --- a/.evergreen/SetupEnv.ps1 +++ b/.evergreen/SetupEnv.ps1 @@ -1,2 +1,9 @@ $version = "12.4.0" $Env:PATH = "$PSScriptRoot\node-v$version-win-x64;C:\Program Files\Git\mingw32\libexec\git-core;$Env:PATH" + +echo "Using node version:" +node --version + +echo "Using npm version:" +npm --version +