2017-02-01 6 views
2

Ich versuche, meine Rails-Anwendung mit hochzuladen:Capistrano Versionskonflikt

bin/cap production deploy 

aber der Einsatz mit dieser Fehlermeldung fehlschlägt:

You have requested:                  
    capistrano ~> 3.3.0                 

The bundle currently has capistrano locked at 3.7.1.          
Try running `bundle update capistrano`             

If you are updating multiple gems in your Gemfile at once,        
try passing them all to `bundle update` 

Ich habe versucht, das Problem zu beheben, indem Sie:

bundle update capistrano 

aber das hat es nicht gelöst.

Das Ding, das ich nicht bekomme, ist, dass ich nicht sehe, wo meine Anwendung 'nach capistrano 3.3.0' fragt. In meinem Gemfile setze ich Capistrano auf Version 3.7.

Neben dem Capistrano gem ich auch mit:

gem capistrano-rails, '~> 1.2' 
gem capistrano3-delayed-job, '~> 1.3' 
gem capistrano-figaro-yml 

Mein Gemfile ist:

https://github.com/acandael/personalsite/blob/master/Gemfile

Kennt jemand wie ich diese Capistrano Version Problem beheben kann?

Dank für Ihre Hilfe,

Anthony

+0

was der Inhalt Ihres 'Gemfile ist. lo ck'? – Markus

+0

Versuchen Sie, Ihre 'confing/deploy.rb' zu prüfen, ob Sie die Capistrano-Version gesperrt haben. – ShallmentMo

Antwort

1

Bitte befolgen Sie alle Schritte in der richtigen Reihenfolge (nicht Überspringe jeden, weil du es getan hast)

  1. cd in Ihr Projektverzeichnis
  2. Lauf bundle exec gem uninstall capistrano -a alle Capistrano Versionen von Ihrem Bündel
  3. Lauf entfernen gem uninstall capistrano -a alle Capistrano Versionen von Ihrem System zu entfernen. Beachten Sie, dass Sie benötigen, kann dies mit Root-Zugriff laufen, wenn Sie eine Fehlermeldung
  4. Lauf bundle install
  5. Lauf erhalten bundle exec gem list capistrano die ausgeben sollte alle installierten Edelsteine ​​mit einem Namen, der „Capistrano“ enthält. Sie sollen nur eine Version des Capistrano gem
  6. Check-in Ihre Dateien config/deploy.rb und config/deploy/* haben. Rb, wenn Sie eine lock 3.x.x Anweisung haben, und stellen Sie sicher, es entspricht die Version als Show installiert in Schritt 5
  7. Lauf Kappe in Bündel Zusammenhang mit bundle exec cap production deploy (Verwendung genau diese Befehlszeilen nicht verwenden ist/cap)
+0

Ich habe alle Schritte gemacht. Der Fehler mit capistrano 3.3.0 ist weg. Aber jetzt bekomme ich diesen Fehler: SSHKit :: Runner :: ExecuteError: Ausnahme während der Ausführung als [email protected]: Bundle Exit Status: 137 – Toontje

+0

Gut, so dass Sie das Edelsteinproblem behoben. Dieser Fehler "Bundle Exit Status: 137" ist nicht verwandt. Versuchen Sie http://stackoverflow.com/questions/23390311/rails-4-1-cant-deploy-via-capistrano-3 Oder öffnen Sie ein neues Ticket. – Benj

+0

ja, es stellte sich heraus, dass Neustart des Servers den Bundle-Exit-Status behoben: 137 Fehler. Vielen dank für Deine Hilfe! – Toontje

0

versuchen bundle exec cap production deploy

+0

versucht, dass bereits, löste es nicht – Toontje

+0

löschen Sie Ihre gemfile.lock dann Bundle installieren und erneut versuchen! –

+0

versuchte es, aber die gleiche Fehlermeldung erhalten. Das Problem ist, dass der Fehler sagt, ich habe capistrano 3.3.0, während der Gemfile.lock Version 3.7.1 hat. Aber ich kann diese Version 3.3.0 nicht in meinem Gemfile finden. Fehle ich etwas? – Toontje

0

try YOUR_APP/.bindle Verzeichnis zu entfernen und führen bundle install wieder

+0

Ich entfernte das Verzeichnis .bundle und dann Bund Paket installieren, aber ich bekomme immer noch die gleiche Fehlermeldung – Toontje