Heroku не может развернуть node.js с помощью bcrypt - PullRequest
0 голосов
/ 01 марта 2020

после добавления bookshelf-secure-password на мой сервер heroku не удается развернуть мой сервер, он продолжает говорить, что не может установить bcrypt.

NPM_CONFIG_DISTURL=https://nodejs.org/download/release/
remote:        NPM_CONFIG_LOGLEVEL=error
remote:        NODE_ENV=production
remote:        NODE_MODULES_CACHE=true
remote:        NODE_VERBOSE=false
remote:
remote: -----> Installing binaries
remote:        engines.node (package.json):  12.14.0
remote:        engines.npm (package.json):   6.13.4
remote:
remote:        Resolving node version 12.14.0...
remote:        Downloading and installing node 12.14.0...
remote:        npm 6.13.4 already installed with node
remote:
remote: -----> Installing dependencies
remote:        Prebuild detected (node_modules already exists)
remote:        Rebuilding any native modules
remote:
remote:        > bcrypt@3.0.8 install /tmp/build_a26ccc13212d9e4abd4c4c76594f5696/node_modules/bcrypt
remote:        > node-pre-gyp install --fallback-to-build
remote:
remote:        sh: 1: node-pre-gyp: Permission denied
remote:        npm ERR! code ELIFECYCLE
remote:        npm ERR! errno 126
remote:        npm ERR! bcrypt@3.0.8 install: `node-pre-gyp install --fallback-to-build`
remote:        npm ERR! Exit status 126
remote:        npm ERR!
remote:        npm ERR! Failed at the bcrypt@3.0.8 install script.
remote:        npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
remote:
remote:        npm ERR! A complete log of this run can be found in:
remote:        npm ERR!     /tmp/npmcache.aPY9Y/_logs/2020-03-01T18_03_19_337Z-debug.log
remote:
remote: -----> Build failed
remote:
remote:        We're sorry this build is failing! You can troubleshoot common issues here:
remote:        https://devcenter.heroku.com/articles/troubleshooting-node-deploys
remote:
remote:        Some possible problems:
remote:
remote:        - node_modules checked into source control
remote:          https://blog.heroku.com/node-habits-2016#9-only-git-the-important-bits

Я пытался следовать указаниям heroku Устранение неполадок Node.js Развертывает сайт https://devcenter.heroku.com/articles/troubleshooting-node-deploys но это не помогло, я попытался установить bcrypt, удалить его и установить bcrypt js, но это не помогает, я не знаю, что делать сейчас Кто-нибудь может помочь?

1 Ответ

0 голосов
/ 02 марта 2020

Несмотря на то, что node_modules не следует выдвигать, как упомянуто в комментариях, похоже, что проблема связана с node-gyp, а не с самими node_modules. Я предложил переключиться с пакета bcrypt на bcrypt js. Он написан на js и его производительность немного хуже, но он не требует python зависимостей, что делает процесс сборки менее сложным. API идентичен, так что было бы тривиально изменить его в вашем коде. Это не совсем ответ на ваш вопрос, но я надеюсь, что вы найдете его полезным.

Я бы прокомментировал это вместо публикации ответа, но моя репутация недостаточно высока, чтобы сделать это.

...