从服务器/守护程序验证npm

时间:2014-07-11 05:40:32

标签: shell authentication npm

我正在从服务器代码调用npm publish,但它不知道如何进行身份验证:

npm ERR! need auth auth and email required for publishing
npm ERR! need auth You need to authorize this machine using `npm adduser`

服务器是Python的,由uwsgi运行。如果从shell手动调用,则完全相同的代码会成功运行,并且服务器在同一用户下运行但似乎没有获取存储的凭据。此外,我无法从服务器运行npm adduser,因为它需要交互。

有任何想法如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

在uwsgi下运行的服务器看不到shell中可用的环境变量。其中一个是$ HOME,这是npm需要知道的以查找auth凭证。现在我通过在uwsgi配置中明确设置$ HOME来解决问题。

感谢Alexey Ten让我朝着正确的方向前进!