使用来自env变量的令牌从私有Github存储库安装NPM包

时间:2016-10-26 07:01:59

标签: node.js authentication heroku github 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,但我不想将令牌存储在版本控制中。

最理想的情况是简单地将令牌存储在环境变量中,所以我的问题是:是否可以使用环境变量对GitHub进行身份验证?或者类似地绑定到Heroku应用程序的其他东西?

1 个答案:

答案 0 :(得分:0)

您可以查看this buildpack,它允许您添加ssh密钥以用作环境变量。另外,看看这个基本相同的SO answer,但使用预构建脚本。