根据:http://docs.travis-ci.com/user/deployment/npm/
你应该在npm login
之后看到一个api密钥。但在我执行npm login
(或npm adduser
)和cat .npmrc
之后,api密钥没有任何内容。
有谁知道我在这里做错了什么?
答案 0 :(得分:9)
似乎npm“api key”只不过是你的npm用户名和密码,除以冒号和base64编码。
所以你可以 echo -n "username:password" | base64
或使用像https://www.base64encode.org/这样的东西。
不要忘记在该密钥上使用 travis encrypt
。生成npm部署的最简单方法是使用travis setup npm
,按照对话框粘贴生成的base64密钥。
在npm adduser
/ npm login
之后,您的~/.npmrc
应该有这样的条目:
registry.npmjs.org/:_authToken=THIS-IS-YOUR-API-KEY
您可以在travis setup npm
期间粘贴此密钥或直接设置值:
travis encrypt --add deploy.api_key YOUR_API_KEY_HERE
答案 1 :(得分:1)
更好的是,您可以使用:
,而不是手动加密您的API密钥(并可能将其复制到您的shell历史记录中(这有安全隐患))。travis setup npm
这会问你各种问题,比如你的电子邮件,你的api密钥(你可以粘贴在这里;它会被改为' ****'),以及其他有用的问题,比如你想要只发布标记的提交等。
您可以在.npmrc
文件中找到您的api密钥,如@simbo所述。