2017-04-06 29 views
1

费加罗环境变量我试图设置一个身份验证令牌为我的Gemfile进入私人混帐回购协议。 即中的Gemfile

gem 'mygem', git: "https://ENV['GITHUB_AUTH_TOKEN']:[email protected]/my_account/my_repo.git", tag: "0.0.1" 

我无法工作,如何这个存储费加罗但其提供给用户捆绑,当我运行捆绑安装。

非常相似, This question

除了不是具有配置/ heroku_env.rb我有一个配置/ application.yml文件。

我相信答案是可笑的简单。

我想保持在该文件中,因为它在一个地方保持整齐的一切,但如果没有,我可以行把它放在特定的,只要它与Heroku的很好。

任何想法?

回答

0

我发现这样做的作品的一种方式,它在,你必须保持凭据两个不同的地方有点恼人。

.bundle

BUNDLE_GITHUB__COM: <auth_token>:x-oauth-basic 

的Gemfile

gem 'mygem', git: "https://github.com/my_account/my_repo.git", tag: "0.0.1" 
# Note that you don't put anything in here, bundler sorts it out automagically 

然后

heroku config:set BUNDLE_GITHUB__COM=<auth_token>:x-oauth-basic 

作品。 恼人,因为现在application.yml与我的heroku文件有不同的内容。但是,这样吧。

更新:

更好的解决方案

只要把

BUNDLE_GITHUB__COM: <auth_token>:x-oauth-basic 

到您的application.yml和Heroku的配置两者。

我希望有人记录在某处,会为我节省很多麻烦......

0

我认为你需要运行

figaro heroku:set -e production 

为它设置设置环境变量在你的config/application.yml文件作为Heroku的环境变量。

+0

这不是问题所在。问题在于,即使在本地gemfile也不会获取我存储在application.yml中的auth变量。 – Carpela