Heroku Ruby version won't upgrade?
I am struggling changing Ruby versions on Heroku.
I use Ruby 2.0.0 with rails 4.
My Gemfile has:
- Can add Gemfile and Gemfile.lock to git
- Issue with heroku
- How to use 'git fetch' in different places?
- Whats the best way to work with Github and multiple computers?
- 'fatal error' during bundle install in ruby on rails
- Failed to deploy app to heroku
source 'https://rubygems.org' ruby '2.0.0' ...
The path in Heroku points to:
$ heroku config -s | grep PATH PATH=bin:vendor/bundle/ruby/1.9.1/bin:/usr/local/bin:/usr/bin:/bin
When I pushed my app, I could see:
Fetching repository, done. Counting objects: 7, done. Delta compression using up to 4 threads. Compressing objects: 100% (4/4), done. Writing objects: 100% (4/4), 431 bytes | 0 bytes/s, done. Total 4 (delta 3), reused 0 (delta 0) -----> Ruby app detected -----> Compiling Ruby/Rails -----> Using Ruby version: ruby-2.0.0 -----> Installing dependencies using Bundler version 1.3.2 Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment Using rake (10.1.1) Using i18n (0.6.9) Using minitest (4.7.5) Using multi_json (1.8.2) Using atomic (1.1.14) Using thread_safe (0.1.3) Using tzinfo (0.3.38) Using activesupport (4.0.0.rc1) Using builder (3.1.4) Using erubis (2.7.0) Using rack (1.5.2) Using rack-test (0.6.2) Using actionpack (4.0.0.rc1) Using mime-types (1.25.1) Using polyglot (0.3.3) Using treetop (1.4.15) Using mail (2.5.4) Using actionmailer (4.0.0.rc1) Using activemodel (4.0.0.rc1) Using activerecord-deprecated_finders (1.0.3) Using arel (4.0.1) Using activerecord (4.0.0.rc1) Using addressable (2.3.5) Using bcrypt-ruby (3.1.2) Using coffee-script-source (1.6.3) Using execjs (2.0.2) Using coffee-script (2.2.0) Using thor (0.18.1) Using railties (4.0.0.rc1) Using coffee-rails (4.0.0) Using orm_adapter (0.5.0) Using warden (1.2.3) Using devise (3.0.4) Using excon (0.25.3) Using geocoder (1.1.9) Using gmapsjs (0.2.30.1) Using heroku-api (0.3.15) Using launchy (2.4.2) Using netrc (0.7.7) Using rest-client (1.6.7) Using rubyzip (1.1.0) Using heroku (3.2.1) Using hike (1.2.3) Using jbuilder (1.0.2) Using jquery-rails (3.0.4) Using jquery-ui-rails (4.1.1) Using json (1.8.1) Using libv8 (184.108.40.206) Using nifty-generators (0.4.6) Using pg (0.17.1) Using bundler (1.3.2) Using tilt (1.4.1) Using sprockets (2.10.1) Using sprockets-rails (2.0.1) Using rails (4.0.0.rc1) Using rails_serve_static_assets (0.0.2) Using rails_stdout_logging (0.0.3) Using rails_12factor (0.0.2) Using rdoc (3.12.2) Using ref (1.0.5) Using sass (3.2.13) Using sass-rails (4.0.0) Using sdoc (0.3.20) Using therubyracer (0.12.0) Using turbolinks (2.1.0) Using uglifier (2.4.0) Using will_paginate (3.0.5) Your bundle is complete! It was installed into ./vendor/bundle Bundle completed (0.46s) Cleaning up the bundler cache. Removing rails_log_stdout (01b5bcc572e3) Removing rails3_serve_static_assets (84910ceb4ca2) -----> Writing config/database.yml to read from DATABASE_URL -----> Preparing app for Rails asset pipeline Running: rake assets:precompile Asset precompilation completed (3.59s) Cleaning assets -----> Discovering process types Procfile declares types -> (none) Default types for Ruby -> console, rake, web, worker -----> Compressing... done, 33.3MB -----> Launching... done, v17 http://rocky-shore-1207.herokuapp.com deployed to Heroku To firstname.lastname@example.org:rocky-shore-1207.git 05cf948..73b6cfa master -> master
Since Heroku said
Using Ruby version: ruby-2.0.0, it detected my Ruby version.
However, when I run
$ heroku run rake db:migrate or
heroku run 'ruby -v'
Your Ruby version is 1.9.2, but your Gemfile specified 2.0.0
How can I change the Ruby version to 2.0.0 on Heroku?
I noticed my rails app had .bash_profile file but it had a wrong path. The path disturbed my heroku path for the ruby version.
Thank you for the help everyone 🙂
3 Solutions collect form web for “Heroku Ruby version won't upgrade?”
Did you execute:
bundle update locally and then committed the file
The server is using Ruby 2, but the app is still configured to use the old version if the new lock file is not pushed.
Review the running version:
$ heroku run console > RUBY_VERSION
If the version is correct, the one you specified, then you have a bundler problem. Just reinstall it.
gem install bundler
I recommend a full and clean build:
bundle clean --force gem install bundler bundle install
you are using Bundler version 1.3.2
Make sure you upgrade to version Bundler 2.0+
Then bundle one last time and push your changes to Heroku
I hope that helps..
This is a hopeful long shot, but maybe try run heroku ps:restart and hope it picks up the new Ruby version.