WithSecureLabs / awspx

A graph-based tool for visualizing effective access and resource relationships in AWS environments.
GNU General Public License v3.0
920 stars 102 forks source link

NPM Dependencies Fail to Install #35

Closed dan-sra closed 4 years ago

dan-sra commented 4 years ago

I just pulled awspx today and ran it for the first time. Unfortunately the NPM dependencies don't install correctly and the web server is not running.

Console output:

npm WARN npm npm does not support Node.js v10.21.0                                                                                  
npm WARN npm You should probably upgrade to a newer version of node as we
npm WARN npm can't make any promises that npm will work with this version.
npm WARN npm Supported releases of Node.js are the latest release of 4, 6, 7, 8, 9.
npm WARN npm You can find the latest version at https://nodejs.org/
npm ERR! code EUNSUPPORTEDPROTOCOL
npm ERR! Unsupported URL Type "npm:": npm:vue-loader@^16.0.0-beta.3
npm WARN deprecated @hapi/joi@15.1.1: joi is leaving the @hapi organization and moving back to 'joi' (https://github.com/sideway/joi/issues/2411)
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated @hapi/address@2.1.4: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/bourne@1.3.2: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/hoek@8.5.1: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/topo@3.1.6: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated fsevents@1.2.13: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2020-08-27T20_10_57_164Z-debug.log

Log file:

0 info it worked if it ends with ok
1 warn npm npm does not support Node.js v10.21.0
2 warn npm You should probably upgrade to a newer version of node as we
3 warn npm can't make any promises that npm will work with this version.
4 warn npm Supported releases of Node.js are the latest release of 4, 6, 7, 8, 9.
5 warn npm You can find the latest version at https://nodejs.org/
6 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'install' ]
7 info using npm@5.8.0
8 info using node@v10.21.0
9 verbose npm-session 1171aa578074561b
10 silly install runPreinstallTopLevelLifecycles
11 silly preinstall awspx@1.2.0
12 info lifecycle awspx@1.2.0~preinstall: awspx@1.2.0
13 silly install loadCurrentTree
14 silly install readLocalPackageData
15 silly install loadIdealTree
16 silly install cloneCurrentTreeToIdealTree
17 silly install loadShrinkwrap
18 silly install loadAllDepsIntoIdealTree
19 http fetch GET 304 https://registry.npmjs.org/cytoscape-dagre 429ms (from cache)
20 http fetch GET 304 https://registry.npmjs.org/codemirror 437ms (from cache)
21 silly pacote range manifest for cytoscape-dagre@^2.2.2 fetched in 444ms
22 silly pacote range manifest for codemirror@^5.53.2 fetched in 450ms
23 http fetch GET 304 https://registry.npmjs.org/@vue%2fcli-plugin-babel 499ms (from cache)
24 silly pacote range manifest for @vue/cli-plugin-babel@^4.3.1 fetched in 522ms
25 http fetch GET 304 https://registry.npmjs.org/core-js 521ms (from cache)
26 silly pacote range manifest for core-js@^3.6.5 fetched in 535ms
27 http fetch GET 304 https://registry.npmjs.org/vue-router 527ms (from cache)
28 silly pacote range manifest for vue-router@^3.1.5 fetched in 549ms
29 http fetch GET 304 https://registry.npmjs.org/@vue%2fcli-service 590ms (from cache)
30 silly pacote range manifest for @vue/cli-service@^4.3.1 fetched in 629ms
31 silly saveTree awspx@1.2.0
32 verbose stack Error: Unsupported URL Type "npm:": npm:vue-loader@^16.0.0-beta.3
32 verbose stack     at unsupportedURLType (/usr/lib/nodejs/npm-package-arg/npa.js:197:15)
32 verbose stack     at fromURL (/usr/lib/nodejs/npm-package-arg/npa.js:250:13)
32 verbose stack     at Function.resolve (/usr/lib/nodejs/npm-package-arg/npa.js:71:12)
32 verbose stack     at Object.keys.map (/usr/share/npm/lib/install/deps.js:445:20)
32 verbose stack     at Array.map (<anonymous>)
32 verbose stack     at BB.resolve.then (/usr/share/npm/lib/install/deps.js:444:47)
32 verbose stack     at tryCatcher (/usr/lib/nodejs/bluebird/js/release/util.js:16:23)
32 verbose stack     at Promise._settlePromiseFromHandler (/usr/lib/nodejs/bluebird/js/release/promise.js:512:31)
32 verbose stack     at Promise._settlePromise (/usr/lib/nodejs/bluebird/js/release/promise.js:569:18)
32 verbose stack     at Promise._settlePromiseCtx (/usr/lib/nodejs/bluebird/js/release/promise.js:606:10)
32 verbose stack     at Async._drainQueue (/usr/lib/nodejs/bluebird/js/release/async.js:138:12)
32 verbose stack     at Async._drainQueues (/usr/lib/nodejs/bluebird/js/release/async.js:143:10)
32 verbose stack     at Immediate.Async.drainQueues [as _onImmediate] (/usr/lib/nodejs/bluebird/js/release/async.js:17:14)
32 verbose stack     at runCallback (timers.js:705:18)
32 verbose stack     at tryOnImmediate (timers.js:676:5)
32 verbose stack     at processImmediate (timers.js:658:5)
33 verbose cwd /opt/awspx/www
34 verbose Linux 5.6.0-kali2-amd64
35 verbose argv "/usr/bin/node" "/usr/bin/npm" "install"
36 verbose node v10.21.0
37 verbose npm  v5.8.0
38 error code EUNSUPPORTEDPROTOCOL
39 error Unsupported URL Type "npm:": npm:vue-loader@^16.0.0-beta.3
40 verbose exit [ 1, true ]
beatro0t commented 4 years ago

Thanks for reporting this issue, and for all of the detailed information. I've managed to recreate it (looks like @vue/cli-service no longer works for older versions of npm - https://github.com/vuejs/vue-cli/issues/5800).

As a work around until I push a proper fix, can you try the following (you might need to run it more than once):

docker exec -it awspx sh -c 'cd /opt/awspx/www && rm -rf node_modules && npm install -g npm@latest && npm install' &&  docker restart awspx

I've just tested it and it seems to have done the trick, if it doesn't please let me know

dan-sra commented 4 years ago

Unfortunately that did not work:

/opt/awspx  > docker exec -it awspx sh -c 'cd /opt/awspx/www && rm -rf node_modules && npm install -g npm@latest && npm install' &&  docker restart awspx                                                                                                              
npm WARN npm npm does not support Node.js v10.21.0                                                                                  
npm WARN npm You should probably upgrade to a newer version of node as we
npm WARN npm can't make any promises that npm will work with this version.
npm WARN npm Supported releases of Node.js are the latest release of 4, 6, 7, 8, 9.
npm WARN npm You can find the latest version at https://nodejs.org/
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
/usr/local/bin/npx -> /usr/local/lib/node_modules/npm/bin/npx-cli.js
+ npm@6.14.8
added 434 packages from 885 contributors in 8.146s
npm WARN npm npm does not support Node.js v10.21.0
npm WARN npm You should probably upgrade to a newer version of node as we
npm WARN npm can't make any promises that npm will work with this version.
npm WARN npm Supported releases of Node.js are the latest release of 4, 6, 7, 8, 9.
npm WARN npm You can find the latest version at https://nodejs.org/
npm ERR! code EUNSUPPORTEDPROTOCOL
npm ERR! Unsupported URL Type "npm:": npm:vue-loader@^16.0.0-beta.3
npm WARN deprecated @hapi/joi@15.1.1: joi is leaving the @hapi organization and moving back to 'joi' (https://github.com/sideway/joi/issues/2411)
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated @hapi/address@2.1.4: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/bourne@1.3.2: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/hoek@8.5.1: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/topo@3.1.6: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated fsevents@1.2.13: fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2020-08-28T13_12_01_708Z-debug.log
beatro0t commented 4 years ago

Did you run the command more than once? It also failed for me the first time but completed successfully after the second attempt

dan-sra commented 4 years ago

I ran it again and the dependencies installed without issue

beatro0t commented 4 years ago

Awesome! Thanks for letting me know. I'll leave this issue open for others to see until I push a proper fix. Thanks again for logging it.

zohrasaida commented 3 years ago

i got the same issue and i tried the command 3 times but it does not work

beatro0t commented 3 years ago

Hi @zohrasaida,

Since this issue was originally opened, awspx has been added to dockerhub. There is now no longer the need to perform this step yourself. Please make sure your repo is up to date and run ./INSTALL, which will pull and run the latest working copy. If this doesn't work, please let me know

ankita92084 commented 1 year ago

same issue is there