При попытке установить netlify-lambda для чередования доступ к npm запрещен - PullRequest
0 голосов
/ 05 февраля 2019

Это происходит, когда я пытался установить netlify-lambda в приложении gatsby

npm install -g netlify-lambda
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/netlify-lambda/node_modules/@babel/plugin-proposal-object-rest-spread
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/netlify-lambda/node_modules/@babel/parser
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/netlify-lambda/node_modules/@babel/helper-create-class-features-plugin
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/netlify-lambda/node_modules/@babel/types
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/netlify-lambda/node_modules/@babel/generator
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/netlify-lambda/node_modules/caniuse-lite
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/netlify-lambda/node_modules/duplexify/node_modules/readable-stream
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/netlify-lambda/node_modules/duplexify
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/netlify-lambda/node_modules/webpack
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/netlify-lambda/node_modules/@babel
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/netlify-lambda/node_modules
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules/netlify-lambda/node_modules/duplexify/node_modules
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules
npm ERR! path /usr/local/lib/node_modules/netlify-lambda/node_modules/@babel/plugin-proposal-object-rest-spread
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
npm ERR! Error: EACCES: permission denied, access '/usr/local/lib/node_modules/netlify-lambda/node_modules/@babel/plugin-proposal-object-rest-spread'
npm ERR!  { [Error: EACCES: permission denied, access '/usr/local/lib/node_modules/netlify-lambda/node_modules/@babel/plugin-proposal-object-rest-spread']
npm ERR!   stack:
npm ERR!    'Error: EACCES: permission denied, access \'/usr/local/lib/node_modules/netlify-lambda/node_modules/@babel/plugin-proposal-object-rest-spread\'',
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'access',
npm ERR!   path:
npm ERR!    '/usr/local/lib/node_modules/netlify-lambda/node_modules/@babel/plugin-proposal-object-rest-spread' }
npm ERR!

Пробовал, но не работал:

sudo chown -R $ USER: $ GROUP~ / .npm sudo chown -R $ USER: $ GROUP ~ / .config

sudo npm install -g netlify-lambda

переустановить npm

1 Ответ

0 голосов
/ 05 февраля 2019

У вас нет root-доступа в сборочном контейнере Netlify, поэтому sudo вам не поможет.

Вам также не нужно npm install делать что-либо подобное вручную - вы должны отправить свой package.json в корень вашего репозитория, и в нем должны быть указаны спецификации для ваших пакетов.Затем Netlify автоматически запускает npm install (см. эту статью для получения более подробной информации), устанавливает то, что вам нужно, и помещает его в ваш $ PATH, чтобы вы могли просто запускать любые двоичные файлы, сгенерированные как часть установки.

В этой статье описывается процесс нашей среды непрерывного развертывания: https://www.netlify.com/blog/2016/10/18/how-our-build-bots-build-sites/

TL; DR. Вы должны иметь возможность поместить netlify-lambda в package.json как зависимость, а затем запустить его во времясборка без дальнейшей установки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...