Heroku push отклонил, не смог установить драгоценные камни через Bundler
Я изо всех сил пытаюсь подтолкнуть свой код к Heroku. И после поиска в вопросах Google и Qaru я не смог найти решение. Вот то, что я получаю, когда пытаюсь "git нажать" мастер героя ":
Heroku receiving push
-----> Rails app detected
-----> Detected Rails is not set to serve static_assets
Installing rails3_serve_static_assets... done
-----> Gemfile detected, running Bundler version 1.0.3
Unresolved dependencies detected; Installing...
Fetching source index for http://rubygems.org/
/usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/remote_fetcher.rb:300:in `open_uri_or_path': bad response Not Found 404 (http://rubygems.org/quick/Marshal.4.8/mail-2.2.6.001.gemspec.rz) (Gem::RemoteFetcher::FetchError)
from /usr/ruby1.8.7/lib/ruby/site_ruby/1.8/rubygems/remote_fetcher.rb:172:in `fetch_path'
.
....
И наконец:
FAILED: http://docs.heroku.com/bundler
! Heroku push rejected, failed to install gems via Bundler
error: hooks/pre-receive exited with error code 1
To [email protected]:myapp.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to '[email protected]:myapp.git'
Спасибо за вашу помощь!
Ответы
Ответ 1
Я не думаю, что это проблема с версией Rails, и она не специфична для Heroku. (Сегодня я столкнулся с той же проблемой при запуске bundle install
на моей локальной машине разработки с Rails 3.0.3.)
Запуск bundle update
локально, как предложил Эндрю, устраняет проблему.
Edit:
Как указано в комментариях: помните git add .
, git commit -m "message"
Ответ 2
Я решил эту проблему следующим образом:
- обновление пакета
- git добавить Gemfile.lock
- git commit -m 'Обновить Gemfile.lock для Heroku'
- git push heroku master
Ответ 3
Использование:
rm -rf ~/.bundle/ ~/.gem/ .bundle/ Gemfile.lock
У меня был Gemfile.lock
на моем локальном сервере
обязательно удалите его из локального сервера, а также V-machine HEROKU.
Ответ 4
Я уверен, что Heroku поддерживает только определенные версии Rails, поэтому вам нужно быть как минимум 3.0, а не кандидатом на выпуск. Обновите версию Rails в своем gemfile, запустите bundle update
, а затем попытайтесь нажать на Heroku.
Ответ 5
Я получаю то же самое - 404:
curl -v -I http://rubygems.org/quick/Marshal.4.8/mail-2.2.6.001.gemspec.rz
В вашем Gemfile вы можете попробовать указать более низкий номер версии этого драгоценного камня? 2.2.5 возможно?
Ответ 6
Я на самом деле решил его, просто нажав его во второй раз, после того, как все посидело несколько минут... Я снова спрятал свою систему докку и столкнулся с той же проблемой, в тот же день после того, как раньше попытался обходной путь обновления нокогири. Это было, когда я понял, это кажется странной героикой; он не всегда принимает первый толчок.
Интересно, если за кулисами он устанавливает заголовки библиотек, а когда они занимают слишком много времени, пакетщик просто терпит неудачу при установке.
Ответ 7
- обновление пакета
- git add Gemfile.lock
- git commit -m 'Обновить Gemfile.lock для Heroku'
- гит пуш герой мастер
это сработало для меня.