使用 Gemfile 中的环境变量部署到 Heroku
Deploying to Heroku with environment variables in Gemfile
我最近更新了我们的 Gemfile,因为 pry-byebug
和 bye-bug
导致我的一些同事的 Rubymine 崩溃。由于我们中有些人使用其他编辑器,因此我在 Gemfile 中添加了一个环境变量:
if ENV["USE_DEBUGGER"]
gem "pry-byebug"
gem "byebug"
end
这在我们的本地机器上运行良好,但部署到 Heroku 会导致以下错误:gist
我已经尝试 运行 bundle install
并提交了一个新的 Gemfile.lock
但这没有任何改变。摆脱控制流声明或简单地删除 gems 修复了 issue.It 一文不值的问题,在同一次提交中我将所需的 ruby 版本提高到 2.2.0
有没有什么方法可以在 Gemfile
中使用条件语句而不破坏 Heroku?
将条件包装在一个组中并尝试 BUNDLE_WITHOUT
部署。 ref
group :byebug do
if ENV["USE_DEBUGGER"]
gem "pry-byebug"
gem "byebug"
end
end
heroku config:add BUNDLE_WITHOUT="byebug"
好吧,在使用 RubyMine 后,我意识到当 require
ing pry 和任何其他相关的调试 gem 时会出现问题。我设法通过将我的 Gemfile 更新为以下内容来解决此问题:
if ENV["USE_DEBUGGER"]
gem "pry-byebug"
gem "byebug"
else
gem "pry-byebug", require: false
gem "byebug", require: false
end
我希望这对面临类似问题的任何人有所帮助。
我最近更新了我们的 Gemfile,因为 pry-byebug
和 bye-bug
导致我的一些同事的 Rubymine 崩溃。由于我们中有些人使用其他编辑器,因此我在 Gemfile 中添加了一个环境变量:
if ENV["USE_DEBUGGER"]
gem "pry-byebug"
gem "byebug"
end
这在我们的本地机器上运行良好,但部署到 Heroku 会导致以下错误:gist
我已经尝试 运行 bundle install
并提交了一个新的 Gemfile.lock
但这没有任何改变。摆脱控制流声明或简单地删除 gems 修复了 issue.It 一文不值的问题,在同一次提交中我将所需的 ruby 版本提高到 2.2.0
有没有什么方法可以在 Gemfile
中使用条件语句而不破坏 Heroku?
将条件包装在一个组中并尝试 BUNDLE_WITHOUT
部署。 ref
group :byebug do
if ENV["USE_DEBUGGER"]
gem "pry-byebug"
gem "byebug"
end
end
heroku config:add BUNDLE_WITHOUT="byebug"
好吧,在使用 RubyMine 后,我意识到当 require
ing pry 和任何其他相关的调试 gem 时会出现问题。我设法通过将我的 Gemfile 更新为以下内容来解决此问题:
if ENV["USE_DEBUGGER"]
gem "pry-byebug"
gem "byebug"
else
gem "pry-byebug", require: false
gem "byebug", require: false
end
我希望这对面临类似问题的任何人有所帮助。