2017-08-12 2 views
0

Ich benutze Ruby 2.2.7 und Rails 3.2.21, und versuchen, ein mit Edelstein: locomotive_cms der Version: ~> 2.5.7 auf Heroku bereitzustellen, und es wird bereitgestellt erfolgreich, aber ich die folgende Fehlermeldung konfrontiert:"Bündler: Befehl konnte nicht geladen werden: Thin" auf Heroku

2017-08-12T23:33:13.732440+00:00 app[web.1]: bundler: failed to load command: thin (/app/vendor/bundle/ruby/2.2.0/bin/thin) 2017-08-12T23:33:13.732490+00:00 app[web.1]: /app/vendor/bundle/ruby/2.2.0/gems/excon-0.23.0/lib/excon/middlewares/expects.rb:6:in `response_call'

Und damit es produziert auch dies:

Heroku::API::Errors::ErrorWithResponse: Expected(200) <=> Actual(400 Bad Request)

ich thin in meinem Gemfile haben, die für locomotivecms nach seiner Dokumentation erforderlich ist.

Ich habe auch andere ähnliche Fragen gestellt, aber ich bin immer noch nicht in der Lage, mein Problem zu lösen. Ich habe Ruby-Version: 2.2.7, und während es sagt: /app/vendor/bundle/ruby/2.2.0/bin/thin

Gemfile:

source 'https://rubygems.org' 
ruby "2.2.7" 

gem 'rails', '3.2.21' 

# Bundle edge Rails instead: 
# gem 'rails', :git => 'git://github.com/rails/rails.git' 
gem 'locomotive_cms', '~> 2.5.7', :require => 'locomotive/engine' 
gem 'dotenv-rails' 

gem 'savon', '~> 2.3.0' # SOAP client for pulling in events 
gem 'twitter', '5.8.0' 
gem 'twitter-text' 
gem 'whenever', require: false 


# Gems used only for assets and not required 
# in production environments by default. 
group :assets do 
    gem 'compass-rails', '~> 2.0.0' 
    gem 'sass-rails', '~> 3.2.4' 
    gem 'coffee-rails', '~> 3.2.2' 

    # See https://github.com/sstephenson/execjs#readme for more supported runtimes 
    gem 'therubyracer', :platforms => :ruby 

    gem 'uglifier', '~> 1.2.4' 
end 

group :development do 
    gem 'unicorn' 
    gem 'pry' 
end 


# To use ActiveModel has_secure_password 
# gem 'bcrypt-ruby', '~> 3.0.0' 

# To use Jbuilder templates for JSON 
# gem 'jbuilder' 

# Use unicorn as the app server 
# gem 'unicorn' 

# Deploy with Capistrano 
# gem 'capistrano' 

# To use debugger 
# gem 'debugger' 

# To use on Heorku 
gem 'locomotive-heroku', '~> 0.1.0', :require => 'locomotive/heroku' 
gem 'thin' 

Gemfile.lock:

Sie es hier finden: https://gist.github.com/Arslan-Ali-Butt/640c1ec1750d17c9803e12a492f35c4e

+0

nur ein fyi - Sie werden auf alle Arten von Problemen stoßen, wenn Sie Schienen 3.x.x und Ruby 2.2.x verwenden. Verwenden Sie ein CMS, das Schienen 4.x unterstützt. – zee

+0

Was ist noch in deinem Gemfile? Und was ist in Gemfile.lock? –

+0

@AaronBreckenridge Ich habe meine Frage mit Gemfile aktualisiert, und ein Link zu Gemfile.lock –

Antwort

3

Sorry im Voraus für die schlechten Nachrichten.

Ich habe einen Blick auf Ihre Gemfile und Gemfile.lock, und auch auf die PR https://github.com/locomotivecms/locomotive-heroku/pull/11 und den neuesten 2.5.x Zweig von locomo_cms unter https://github.com/locomotivecms/engine/tree/v2.5.x. Sie haben das Ende der Funktionalität erreicht, da die Versionen der Gems, auf die Sie angewiesen sind, nicht gewartet werden.

locomotive_cms wurde in locomotivecms umbenannt und auf Version 3+ erweitert. Das Juwel locomotive_cms wird nicht mehr beibehalten. Nicht nur das, aber es ist nicht mehr kompatibel mit einer Reihe der anderen Abhängigkeiten, die Sie verwenden, nämlich excon.

Bundler could not find compatible versions for gem "excon": 
    In Gemfile: 
    locomotive_cms was resolved to 2.5.8, which depends on 
     fog (~> 1.12.1) was resolved to 1.12.1, which depends on 
     excon (~> 0.23.0) 

    locomotive-heroku was resolved to 0.1.0, which depends on 
     heroku-api (~> 0.3.23) was resolved to 0.3.23, which depends on 
     excon (~> 0.44) 

Sie werden bei https://locomotive-v3.readme.io/docs/upgrade-to-v3 durch die Upgrade-Anleitung gehen zu wollen.

+0

Ja, ich habe mit Heorku Team kontaktiert, und das ist in der Tat Grund. 'lococ_cms' ist nicht kompatibel mit der neuesten Version von Heroku API. –

0

hinzufügen Procfile (Platziere eine Datei mit dem Namen Procfile im Wurzelverzeichnis deiner App), um Heroku zu empfehlen, dünn zu verwenden:

web: bundle exec thin start -p $PORT 

Damit können Sie in der Produktion auf Heroku dünn laufen. Ich nehme an, dass Ihr Gemfile richtig konfiguriert ist

Die zweite Nachricht zeigt auf eine schlechte Anfrage nach Heroku API guide, aber es ist schwer zu sagen, wie es mit der ersten Fehlermeldung verbunden ist.

+0

Ein Procfile ist schon da mit dem Inhalt: web: bundle exec thin start -p $ PORT -e $ RACK_ENV' –

+0

Welche Version von Thin sind verwendest du? –

+0

Es ist '1.7.2'. Ich habe es jedoch nicht speziell in meinem Gemfile erwähnt. –

Verwandte Themen