Heroku: Error pushing Rails app to Heroku, Heroku

2020-04-10 04:29发布

问题:

I am attempting to push a Rails app to Heroku however I am constantly getting this error.

user$ git push heroku master
Initializing repository, done.
Counting objects: 158, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (144/144), done.
Writing objects: 100% (158/158), 671.52 KiB | 160.00 KiB/s, done.
Total 158 (delta 32), reused 0 (delta 0)

-----> Ruby app detected
-----> Compiling Ruby/Rails
 !
 !     An error occurred while installing Ruby ruby-2.1.1
 !     For supported Ruby versions see https://devcenter.heroku.com/articles/ruby-support#supported-runtimes
 !     Note: Only the most recent version of Ruby 2.1 is supported on Cedar-14
 !     Command: 'set -o pipefail; curl --fail --retry 3 --retry-delay 1 --connect-timeout 3 --max-time 30 https://s3-external-1.amazonaws.com/heroku-buildpack-ruby/cedar-14/ruby-2.1.1.tgz -s -o - | tar zxf - ' failed unexpectedly:
 !     
 !     gzip: stdin: unexpected end of file
 !     tar: Child returned status 1
 !     tar: Error is not recoverable: exiting now
 !

 !     Push rejected, failed to compile Ruby app

To git@heroku.com:user.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:user.git'

I have research some possible solutions hover around on S.O however none of which seemed to work. I tried destroying the heroku app then recreating it and I tried using different ruby versions but that didnt seem to work either.

回答1:

Heroku does not support version 2.1.1

  • https://devcenter.heroku.com/articles/ruby-support#supported-runtimes

You need to specify a different version in your Gemfile:

# Gemfile
source "https://rubygems.org"
ruby '2.1.4' # or other from link above

[...]