使用来自envvariables的令牌从私有Github repo安装NPM包

我有一个私人GitHub回购协议中的Node项目,其中包括对另一个私人GitHub回购协议的NPM依赖,例如:

{ "dependencies": { "my-secret-module": "git+ssh://github.com/user/repo-name.git#sha" } } 

该项目正在Heroku上运行,其中npm install步骤在部署过程中失败,同时尝试从私人仓库安装。

我知道在GitHub上生成OAuth令牌的可能性,并在上面的URL中使用它们,如下所示: git+ssh://<token>@github.com/user/repo-name.git ,但是我不想要在版本控制中存储令牌。

最理想的情况是将标记存储在环境variables中,所以我的问题是:是否可以使用环境variables对GitHub进行身份validation? 还是其他类似的绑定到Heroku应用程序?

你可以看看这个 buildpack,它允许你添加你的ssh密钥作为环境variables。 另外,看看这个答案基本相同,但使用预编译脚本。