How can I choose Ruby version on Heroku?

独自空忆成欢 提交于 2019-11-30 01:47:47

Heroku's current stack, Cedar, uses 1.9.2 by default. Cedar also supports specifying the Ruby version in your Gemfile. Currently, 1.9.2 and 1.9.3 are valid options.

# Gemfile
source "https://rubygems.org"
ruby "1.9.3"
...

More details are available in the Ruby support article: https://devcenter.heroku.com/articles/ruby-support


If you are currently using Aspen or Bamboo, you can switch to 1.9.2 by using the stack:migrate command:

$ heroku stack:migrate bamboo-mri-1.9.2

You cannot automatically migrate to the Cedar stack at this time, but there is a guide on how to do so: https://devcenter.heroku.com/articles/cedar-migration

You can now explicitly specify a Ruby version on Heroku.

Simply setup your Gemfile as so

# Gemfile
source "https://rubygems.org"
ruby "1.9.3"

# Gems go here

I wanted to use the version I already had defined in the .ruby-version file so I ended up creating a buildpack that can be used before heroku-buildpack-ruby that injects the version from the .ruby-version into the Gemfile. It also support versions without patch or aliases.

https://github.com/platanus/heroku-buildpack-ruby-version

This way you can have your version defined only in one place.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!