api-spec-converter: npm install -g fails with permission error
Installation has failed for me twice, on machines with different architectures and node/npm versions. I get the same error on each platform:
`# npm i -g api-spec-converter /usr/local/bin/api-spec-converter -> /usr/local/lib/node_modules/api-spec-converter/bin/api-spec converter
jsonpath@0.2.12 postinstall /usr/local/lib/node_modules/api-spec-converter/node_modules/jsonpath node lib/aesprim.js > generated/aesprim-browser.js sh: generated/aesprim-browser.js: Permission denied npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! jsonpath@0.2.12 postinstall:
node lib/aesprim.js > generated/aesprim-browser.js
npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the jsonpath@0.2.12 postinstall script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. ╭─────────────────────────────────────╮ │ │ │ Update available 5.3.0 → 5.4.2 │ │ Run npm i -g npm to update │ │ │ ╰─────────────────────────────────────╯ npm ERR! A complete log of this run can be found in: npm ERR! /root/.npm/_logs/2017-09-21T06_47_16_083Z-debug.log`
About this issue
- Original URL
- State: open
- Created 7 years ago
- Reactions: 6
- Comments: 22
I can and do install global packages all the time. Just ahead of this install, I globally installed “swagger-to-graphql,” which is the point of this exercise; the files I’m converting need to be in Swagger v2 format, but they are currently in Swagger v1.
It failed to work with sudo, giving the same permissions error as it did with full root access.
However, while researching, I found a thread where the following syntax was explicated, and it installs just fine this way:
sudo npm install -g api-spec-converter --unsafe-perm=true --allow-root
This works in Linux Slackware64-current. I’m off to the races. Obviously, it may not work for everyone on all architectures, so the jsonpath folks should probably be made aware of the issue.
it works for me 😃
sudo npm install -g artillery --unsafe-perm=true --allow-root
sudo npm install -g api-spec-converter --unsafe-perm=true --allow-root
worked for me too. I’m using ubuntu as a docker container, don’t know if that could impact. and here is the detail of the distro:Same error here. I’m trying to install as root user so I shouldn’t have any problem of permission. Using ubuntu and npm 5.3.0
Hrm, I’m still unable to repro, also with npm@5.3.0 on ubuntu (14.04)
Any other details you can think of that might help us reproduce/diagnose? In the meantime,
sudo npm install -g api-spec-converter --unsafe-perm=true --allow-root
seems to work.Not worked for me on mac sudo npm install -g artillery --unsafe-perm=true --allow-root
Works on ubuntu as well … npm install -g artillery --allow-root --unsafe-perm=true