2013-03-13 9 views
9

Dump mózgu, ponieważ mój jest smażony z googlowaniem i trzaskaniem głową w komputerze. Każda pomoc lub wskazówki byłyby WSPANIAŁE doceniane!Uaktualnienie Ruby 2.0/Rails 4.0.0beta kończy się niepowodzeniem po pushowaniu do heroku

Zarządzam moimi klejnotami za pośrednictwem rvm.

$ ruby -v 
ruby 2.0.0p0 (2013-02-24 revision 39474) [x86_64-darwin12.2.0] 

$ rails -v 
Rails 4.0.0.beta1 

Wtedy kiedy chcemy utworzyć nową aplikację od podstaw

$ rails new brand_new_app 
create 
    create README.rdoc 
    ... 
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed. 

$ cd brand_new_app 

Potem zainicjować repo git, dodać aplikację po prostu stworzony. I następnie utworzyć instancję Heroku

brand_new_app $ heroku create 
    Git remote heroku added 

Potem spróbować wdrożyć do Heroku ale nie na aktywnym wsparciu gem.

brand_new_app $ git push heroku master 
    Counting objects: 62, done. 
    Delta compression using up to 4 threads. 
    Compressing objects: 100% (50/50), done. 
    Writing objects: 100% (62/62), 20.54 KiB, done. 
    Total 62 (delta 2), reused 0 (delta 0) 

    -----> Ruby/Rails app detected 
    -----> Installing dependencies using Bundler version 1.3.2 
    Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment 
    Fetching gem metadata from https://rubygems.org/......... 
    Fetching gem metadata from https://rubygems.org/.. 
    Installing rake (10.0.3) 
    Installing i18n (0.6.4) 
    Installing minitest (4.6.2) 
    Installing multi_json (1.6.1) 
    Installing atomic (1.0.1) 
    Installing thread_safe (0.1.0) 
    Installing tzinfo (0.3.37) 
    Installing activesupport (4.0.0.beta1) 
    Gem::InstallError: activesupport requires Ruby version >= 1.9.3. 
    An error occurred while installing activesupport (4.0.0.beta1), and Bundler 
    cannot continue. 
    Make sure that `gem install activesupport -v '4.0.0.beta1'` succeeds before 
    bundling. 
    ! 
    !  Failed to install gems via Bundler. 
    ! 
    !  Heroku push rejected, failed to compile Ruby/rails app 

Mam implodowane rvm (idk dlaczego, głównie bc byłem sfrustrowany) i sprawdziłem każde możliwe miejsce. Stworzyłem aplikację szyn bez żadnych specjalnych ustawień, jest to zwykła instalacja. Jeśli ktokolwiek ma jakieś wskazówki, które mogą poprowadzić mnie we właściwym kierunku, wyślij je po swojemu! Doceniam to, że czytasz tak daleko!

+0

Czy jesteś pewien, że jesteś na właściwym wykonaniem stosie? Musisz użyć cedru. Nie jestem pewien, czy domyślnym ustawieniem w narzędziu heroku jest teraz ten stos, czy starszy bambus. –

+1

Jak wygląda Twój Gemfile? Czy jest tam linia 'ruby'? – Ari

+0

@Srdjan Zrobiłem podwójne sprawdzenie i używa cedru, ponieważ jest to obecnie domyślne. Dziękuję bardzo za poświęcenie czasu, aby na to spojrzeć! –

Odpowiedz

18

Powinieneś umieścić rubinową linię w Gemfile, tak jak wyjaśniono to w dokumentacji Heroku.

Wystarczy dodać linię ruby "2.0.0" pod source "https://rubygems.org" w swoim pliku Gemfile.

https://blog.heroku.com/archives/2012/11/5/ruby-2-preview-on-heroku

Próbowałem to i to działa na Heroku. Wygląda na to, że Rails 4 nie jest kompatybilny z różnymi wersjami ruby. Jest to trochę dziwne, ponieważ mówią tutaj, że:

Ruby 2.0 jest preferowaną Ruby do użycia z Rails 4.0.

http://weblog.rubyonrails.org/2013/2/25/Rails-4-0-beta1/

Wydaje się korzystne, to znaczy wymagane.

Hope this helps

+1

Więcej informacji na ten temat: https://devcenter.heroku.com/articles/ruby-versions – Ari

+0

Dziękuję za informacje Arjan i Ari, a teraz to sprawdzę. –

+5

Nie zapomnij, że musisz: git commit' twoje zmiany dla heroku, aby je potwierdzić. Po prostu spędziłem naprawdę dużo czasu na zastanawianiu się nad tym. Teraz spędzę naprawdę długi czas czując się głupio. – Andrew

Powiązane problemy