3

アプリを Heroku にデプロイしようとしていますが、次の出力で拒否され続けます。

waitup$git push staging master
Counting objects: 4184, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (1033/1033), done.
Writing objects: 100% (4184/4184), 1.11 MiB | 494 KiB/s, done.
Total 4184 (delta 3069), reused 4184 (delta 3069)

-----> Heroku receiving push
-----> Ruby/Rails app detected
-----> Installing dependencies using Bundler version 1.2.1
       Running: bundle install --without development:test --path vendor/bundle --binstubs bin/ --deployment
       Fetching gem metadata from http://rubygems.org/.......
       Fetching https://github.com/stripe/stripe-ruby
       Installing rake (0.8.7)
       Installing abstract (1.0.0)
       Installing activesupport (3.0.4)
       Installing builder (2.1.2)
       Installing i18n (0.5.0)
       Installing activemodel (3.0.4)
       Installing erubis (2.6.6)
       Installing rack (1.2.2)
       Installing rack-mount (0.6.14)
       Installing rack-test (0.5.7)
       Installing tzinfo (0.3.27)
       Installing actionpack (3.0.4)
       Installing mime-types (1.16)
       Installing polyglot (0.3.1)
       Installing treetop (1.4.9)
       Installing mail (2.2.19)
       Installing actionmailer (3.0.4)
       Installing bcrypt-ruby (2.1.4) with native extensions
       Installing orm_adapter (0.0.5)
       Installing warden (1.0.4)
       Installing devise (1.3.4)
       Installing formtastic (1.2.3)
       Installing has_scope (0.5.0)
       Installing responders (0.6.4)
       Installing inherited_resources (1.2.2)
       Installing will_paginate (3.0.pre2)
       Installing inherited_views (0.0.2)
       Installing arel (2.0.9)
       Installing activerecord (3.0.4)
       Installing meta_search (1.0.5)
       Installing activeresource (3.0.4)
       Using bundler (1.2.1)
       Installing thor (0.14.6)
       Installing railties (3.0.4)
       Installing rails (3.0.4)
       Installing sass (3.1.2)
       Installing activeadmin (0.2.2)
       Installing addressable (2.2.6)
       Installing authlogic (2.1.6)
       Installing celerity (0.8.8)
       Installing culerity (0.2.15)
       Installing nokogiri (1.4.4) with native extensions
       Installing ffi (0.6.3) with native extensions
       Installing childprocess (0.1.7)
       Installing json_pure (1.5.1)
       Installing rubyzip (0.9.4)
       Installing selenium-webdriver (0.1.3)
       Installing xpath (0.1.3)
       Installing capybara (0.4.1.2)
       Installing configuration (1.2.0)
       Installing cookiejar (0.3.0)
       Installing diff-lcs (1.1.2)
       Installing json (1.5.1) with native extensions
       Installing gherkin (2.3.7) with native extensions
       Installing term-ansicolor (1.0.5)
       Installing cucumber (0.10.2)
       Installing cucumber-rails (0.3.1)
       Installing daemons (1.1.6)
       Installing database_cleaner (0.6.4)
       Installing hiredis (0.3.2) with native extensions
       Installing em-hiredis (0.1.0)
       Installing escape_utils (0.2.4) with native extensions
       Installing eventmachine (0.12.10) with native extensions
       Installing em-http-request (0.3.0) with native extensions
       Installing thin (1.3.1) with native extensions
       Installing faye (0.7.1)
       Installing launchy (0.4.0)
       Installing rest-client (1.6.3)
       Installing heroku (2.2.8)
       Installing jquery-rails (1.0.7)
       Installing jwt (0.1.3)
       Installing multi_json (1.0.3)
       Installing mysql2 (0.2.7) with native extensions
       Installing rspec-core (2.5.1)
       Installing rspec-expectations (2.5.0)
       Installing rspec-mocks (2.5.0)
       Installing rspec (2.5.0)
       Installing rspec-rails (2.5.0)
       Installing seed-fu (2.0.1)
       Installing sequel (3.20.0)
       Installing sinatra (1.0)
       Installing spork (0.8.4) with native extensions
       Installing sqlite3 (1.3.4) with native extensions
       Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
       /usr/local/bin/ruby extconf.rb
       checking for sqlite3.h... no
       sqlite3.h is missing. Try 'port install sqlite3 +universal'
       or 'yum install sqlite3-devel' and check your shared library search path (the
       location where your sqlite3 shared library is located).
       *** extconf.rb failed ***
       Could not create Makefile due to some reason, probably lack of
       necessary libraries and/or headers.  Check the mkmf.log file for more
       details.  You may need configuration options.
       Provided configuration options:
       --with-opt-dir
       --without-opt-dir
       --with-opt-include
       --without-opt-include=${opt-dir}/include
       --with-opt-lib
       --without-opt-lib=${opt-dir}/lib
       --with-make-prog
       --without-make-prog
       --srcdir=.
       --curdir
       --ruby=/usr/local/bin/ruby
       --with-sqlite3-dir
       --without-sqlite3-dir
       --with-sqlite3-include
       --without-sqlite3-include=${sqlite3-dir}/include
       --with-sqlite3-lib
       --without-sqlite3-lib=${sqlite3-dir}/lib
       --enable-local
       --disable-local
       Gem files will remain installed in /tmp/build_qlnbqtp08z3t/vendor/bundle/ruby/1.9.1/gems/sqlite3-1.3.4 for inspection.
       Results logged to /tmp/build_qlnbqtp08z3t/vendor/bundle/ruby/1.9.1/gems/sqlite3-1.3.4/ext/sqlite3/gem_make.out
       An error occurred while installing sqlite3 (1.3.4), and Bundler cannot continue.
       Make sure that `gem install sqlite3 -v '1.3.4'` succeeds before bundling.
 !
 !     Failed to install gems via Bundler.
 !     
 !     Detected sqlite3 gem which is not supported on Heroku.
 !     http://devcenter.heroku.com/articles/how-do-i-use-sqlite3-for-development
 !
 !     Heroku push rejected, failed to compile Ruby/rails app

To git@heroku.com:waiterd2-staging.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:waiterd2-staging.git'

明らかに、ここでは sqlite3 gem が問題です。奇妙な部分は、Gemfile または Gemfile.lock に依存関係として含まれていないことです。

私の宝石ファイルは次のようになります。

source 'http://rubygems.org'

gem 'rails', '3.1.0'

gem 'pg'
gem 'thin'
gem 'authlogic', '3.1.3'
gem 'twilio-ruby'
gem 'heroku'
gem 'activeadmin', :git => 'https://github.com/gregbell/active_admin.git'
gem 'stripe', :git => 'https://github.com/stripe/stripe-ruby'
gem 'faye'

group :assets do
    gem 'less'
    gem 'bourbon'
    gem 'therubyracer'
    gem 'sass-rails'
    gem 'coffee-rails'
    gem 'uglifier'
end

ここでいくつかのことが際立っています。Heroku によってインストールされた authlogic gem は、Gemfile で指定されたものではありません。私が authlogic gem を疑っている唯一の理由は、sqlite3 が開発依存としてリストされているためです。しかし、これは問題ではありません。

Heroku の出力にリストされているコマンドをローカル マシンで実行すると、sqlite3 gem がインストールされません。

Gemfile.lock ファイルを削除してバンドラーを再度実行するなど、StackOverflow や他の場所で見つけた多くの提案を試しました。これらのどれも機能していません。Heroku は依然として間違ったバージョンの authlogic をインストールし、sqlite3 をインストールしようとします。

Heroku に sqlite3 gem のインストールをやめさせるにはどうすればよいですか?

あなたの助けは大歓迎です!

4

1 に答える 1

2

問題は非常に単純であることが判明しました。間違ったブランチを Heroku にプッシュしていたため、問題を修正しようとしても明らかに効果がありませんでした。

于 2012-11-06T17:41:07.230 に答える