我正在部署一个Go项目,它的go get ./...
阶段失败了,因为存储库是私有的,heroku实例没有有效的私钥来提取它。
是否可以向heroku实例添加专用只读部署密钥(例如bitbucket)?
如果我把它添加到构建包本身,它就会暴露给每个人,因为构建包是公共回购。
Heroku Labs有一个名为user-env-compile
的功能,它允许您的应用程序的配置变量在编译时可用。如果启用了此功能,则可以使用heroku config:add KEY=VALUE
添加部署密钥,然后让构建包在编译时从环境中读取值。由于您的应用程序的所有配置都将可用,请确保您使用的是值得信赖的构建包。有关此功能的更多信息,请参阅开发中心的文章:
https://devcenter.heroku.com/articles/labs-user-env-compile