我遇到了一个问题,我不确定如何以最佳方式解决。在这里:
我们最近开始使用私有NPM软件包,并试图弄清楚如何将本地开发循环与CI和Deployment Pipeline联系起来。
我已经查看并开始利用NPM_TOKEN变量。 在CI中,我们正在执行以下操作:
echo "//registry.yarnpkg.com/:_authToken=$NPM_TOKEN" >> ~/.npmrc
这很好用,但是在Heroku上进行部署期间,我们无法访问家。因此,为了使其在Heroku上工作,我们在项目目录中添加了.npmrc文件。这很有效,因为npm使用环境变量来填充它。
问题在于,在本地,所有yarn命令都会因缺少变量而失败。 NPM网站(https://blog.npmjs.org/post/118393368555/deploying-with-npm-private-modules)上建议的方法是将令牌添加到.profile中的环境中。这似乎不是最好的解决方案,因为该设置现在是全局的,应该在每个存储库中保存。
我在这里找到了一个类似的问题,它使用npm,但似乎不适用于yarn。 Using auth tokens in .npmrc 那里的评论还提到它不适用于npm,也没有文档提及dotenv文件。
有没有更好的方法来解决这个问题?似乎是一个很久以前应该解决的常见问题...