我有一个受http基本身份验证保护的私有gem服务器。目前,我将凭证存储为环境变量,并将此行放在我的Gemfile顶部:
source "https://#{ENV['GEMS_USERNAME']}:#{ENV['GEMS_PASSWORD']}@gems.myserver.com"
到目前为止一切顺利,当我运行捆绑包时,一切似乎都有效。但是我看了一下生成的Gemfile.lock并注意到我的服务器的凭据在那里得到了硬编码。
GEM
remote: https://rubygems.org/
remote: https://username:password@gems.myserver.com/
有没有办法防止这种情况发生?我不想将我的凭证推送到git仓库。
答案 0 :(得分:0)
如果您使用的是bundler> = 1.6,则可以执行以下操作:
bundle config http://gems.myserver.com username:password
它应该将这些凭据放在 .bundle / config 文件中,这样您就不需要将它们显式地包含在Gemfile(.lock)中了。