Heroku:由于gem install bundler,无法推送到Heroku

时间:2022-07-14 20:41:48

All of a sudden I cannot push to Heroku and I get to the point where the build has succeeded, but then on compilation I see the following:

突然之间,我无法推送到Heroku,我达到了构建成功的程度,但是在编译时我看到了以下内容:

remote: -----> Build succeeded!
remote: -----> Ruby app detected
remote: -----> Compiling Ruby/Rails
remote: sh: 1: gem-install-bundler: not found
remote: sh: 1: gem-install-bundler: not found
remote:  !
remote:  !     An error occurred while installing ruby-2.2.3-The-latest-bundler-is-1.15.2,-but-you-are-currently-running-1.15.1.-To-update,-run-`gem-install-bundler`
remote:  !     
remote:  !     Heroku recommends you use the latest supported Ruby version listed here:
remote:  !     https://devcenter.heroku.com/articles/ruby-support#supported-runtimes
remote:  !     
remote:  !     For more information on syntax for declaring a Ruby version see:
remote:  !     https://devcenter.heroku.com/articles/ruby-versions
remote:  !     
remote:  !     
remote:  !     Debug InformationCommand: 'set -o pipefail; curl -L --fail --retry 5 --retry-delay 1 --connect-timeout 3 --max-time 30 https://s3-external-1.amazonaws.com/heroku-buildpack-ruby/cedar-14/ruby-2.2.3-The-latest-bundler-is-1.15.2,-but-you-are-currently-running-1.15.1.-To-update,-run-`gem-install-bundler`.tgz -s -o - | tar zxf - ' failed unexpectedly:
remote:  !     bash: gem-install-bundler: command not found
remote:  !     
remote:  !     gzip: stdin: unexpected end of file
remote:  !     tar: Child returned status 1
remote:  !     tar: Error is not recoverable: exiting now
remote:  !
remote:  !     Push rejected, failed to compile Ruby app.
remote: 
remote:  !     Push failed

From what I could gather, I figured I needed to update bundler, so I updated bundler to version 1.15.2, and attempted to push it up again, but the same error is shown. My gemfile.lock even says BUNDLED WITH 1.15.2.

从我可以收集的内容来看,我认为我需要更新bundler,因此我将bundler更新到版本1.15.2,并尝试再次将其推送,但显示相同的错误。我的gemfile.lock甚至说是BUNDLED WITH 1.15.2。

Is there something I am missing?

有什么我想念的吗?

2 个解决方案

#1


1  

I reached out to Heroku and they showed me that I had multiple buildpacks:

我联系了Heroku,他们告诉我我有多个buildpack:

Thanks for contacting us regarding issue around installation of ruby. It seems that the app has Heroku Buildpack for Ruby specified twice, with the latter specifying the master version rather than the released version:

感谢您就安装红宝石的问题与我们联系。似乎该应用程序已将Heroku Buildpack for Ruby指定两次,后者指定主版本而不是发布版本:

$ heroku buildpacks -a app-name
=== app-name Buildpack URLs
1. heroku/ruby
2. https://github.com/heroku/heroku-buildpack-nodejs.git
3. https://github.com/heroku/heroku-buildpack-ruby.git

They then continued to show me how to solve the issue:

然后他们继续告诉我如何解决这个问题:

Could you please try specifying each of buildpacks once as well as using the released versions to see if the problem pertists?

您能否尝试一次指定每个buildpacks以及使用已发布的版本来查看问题是否存在?

$ heroku buildpacks:remove -i 3 -a app-name
$ heroku buildpacks:remove -i 2 -a app-name
$ heroku buildpacks:remove -i 1 -a app-name
$ heroku buildpacks:add heroku/nodejs -a app-name
$ heroku buildpacks:add heroku/ruby -a app-name
$ git push heroku master

and this solved everything!

这解决了一切!

#2


0  

did you Check the resulting Gemfile.lock into version control

你把生成的Gemfile.lock检查到版本控制中了吗?

git add Gemfile.lock

#1


1  

I reached out to Heroku and they showed me that I had multiple buildpacks:

我联系了Heroku,他们告诉我我有多个buildpack:

Thanks for contacting us regarding issue around installation of ruby. It seems that the app has Heroku Buildpack for Ruby specified twice, with the latter specifying the master version rather than the released version:

感谢您就安装红宝石的问题与我们联系。似乎该应用程序已将Heroku Buildpack for Ruby指定两次,后者指定主版本而不是发布版本:

$ heroku buildpacks -a app-name
=== app-name Buildpack URLs
1. heroku/ruby
2. https://github.com/heroku/heroku-buildpack-nodejs.git
3. https://github.com/heroku/heroku-buildpack-ruby.git

They then continued to show me how to solve the issue:

然后他们继续告诉我如何解决这个问题:

Could you please try specifying each of buildpacks once as well as using the released versions to see if the problem pertists?

您能否尝试一次指定每个buildpacks以及使用已发布的版本来查看问题是否存在?

$ heroku buildpacks:remove -i 3 -a app-name
$ heroku buildpacks:remove -i 2 -a app-name
$ heroku buildpacks:remove -i 1 -a app-name
$ heroku buildpacks:add heroku/nodejs -a app-name
$ heroku buildpacks:add heroku/ruby -a app-name
$ git push heroku master

and this solved everything!

这解决了一切!

#2


0  

did you Check the resulting Gemfile.lock into version control

你把生成的Gemfile.lock检查到版本控制中了吗?

git add Gemfile.lock