2013-08-16 2 views
0

Я пытаюсь развернуть новую версию своего приложения для героку. Развертывание не выполняется, потому что героику говорит, что gem pg не находится в моем GEMFILE ... У меня есть этот камень postgres в моем GEMFILE. Я также искал ответы, но никто не работал ... Как кто-нибудь задумался?Heroku игнорирует pg gem

Я использую рубин 2.0.0p247, Rails 3.2.14 завод-CMS 2.1.0

Вот мой Gemfile:

source 'https://rubygems.org' 
ruby '2.0.0' 

gem 'rails' 
gem 'newrelic_rpm' 

group :production do 
    gem 'pg' 
    gem 'fog' 
end 

# Gems used only for assets and not required 
# in production environments by default. 
group :assets do 
    gem 'sass-rails' 
    gem 'coffee-rails' 

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

    gem 'uglifier', '>= 1.0.3' 
end 

gem 'jquery-rails' 

# To use ActiveModel has_secure_password 
# gem 'bcrypt-ruby' 

# 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' 

# The Heroku gem allows you to interface with Heroku's API 
gem 'heroku' 

# Fog allows you to use S3 assets (added for Heroku) 
gem 'fog' 

# Postgres support (added for Heroku) 
#gem 'pg' 

#Connecting to Amazon S3 
gem 'aws-s3' 
#gem 'taps' 

# Refinery CMS 
#gem 'refinerycms', '~> 2.0.0', :git => 'git://github.com/refinery/refinerycms.git', :branch => '2-0-stable' 
gem 'refinerycms' 

# Specify additional Refinery CMS Extensions here (all optional): 
gem 'refinerycms-i18n' 
# gem 'refinerycms-blog', '~> 2.0.0' 
# gem 'refinerycms-inquiries', '~> 2.0.0' 
# gem 'refinerycms-search', '~> 2.0.0' 
gem 'refinerycms-page-images' 

gem 'refinerycms-announcements', :path => 'vendor/extensions' 
gem 'refinerycms-publications', :path => 'vendor/extensions' 
gem 'refinerycms-workers', :path => 'vendor/extensions' 

А вот сообщение об ошибке:

-----> Writing config/database.yml to read from DATABASE_URL 
-----> Preparing app for Rails asset pipeline 
     Running: rake assets:precompile 
     rake aborted! 
     Please install the postgresql adapter: `gem install activerecord-postgresql-adapter` (pg is not part of the bundle. Add it to Gemfile.) 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/bundler-1.3.2/lib/bundler/rubygems_integration.rb:214:in `block in replace_gem' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activerecord-3.2.14/lib/active_record/connection_adapters/postgresql_adapter.rb:7:in `<top (required)>' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activesupport-3.2.14/lib/active_support/dependencies.rb:251:in `require' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activesupport-3.2.14/lib/active_support/dependencies.rb:251:in `block in require' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activesupport-3.2.14/lib/active_support/dependencies.rb:236:in `load_dependency' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activesupport-3.2.14/lib/active_support/dependencies.rb:251:in `require' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activerecord-3.2.14/lib/active_record/connection_adapters/abstract/connection_specification.rb:50:in `resolve_hash_connection' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activerecord-3.2.14/lib/active_record/connection_adapters/abstract/connection_specification.rb:41:in `resolve_string_connection' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activerecord-3.2.14/lib/active_record/connection_adapters/abstract/connection_specification.rb:27:in `spec' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activerecord-3.2.14/lib/active_record/connection_adapters/abstract/connection_specification.rb:130:in `establish_connection' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activerecord-3.2.14/lib/active_record/railtie.rb:88:in `block (2 levels) in <class:Railtie>' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activesupport-3.2.14/lib/active_support/lazy_load_hooks.rb:36:in `instance_eval' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activesupport-3.2.14/lib/active_support/lazy_load_hooks.rb:36:in `execute_hook' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activesupport-3.2.14/lib/active_support/lazy_load_hooks.rb:26:in `block in on_load' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activesupport-3.2.14/lib/active_support/lazy_load_hooks.rb:25:in `each' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activesupport-3.2.14/lib/active_support/lazy_load_hooks.rb:25:in `on_load' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activerecord-3.2.14/lib/active_record/railtie.rb:80:in `block in <class:Railtie>' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/railties-3.2.14/lib/rails/initializable.rb:30:in `instance_exec' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/railties-3.2.14/lib/rails/initializable.rb:30:in `run' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/railties-3.2.14/lib/rails/initializable.rb:55:in `block in run_initializers' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/railties-3.2.14/lib/rails/initializable.rb:54:in `each' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/railties-3.2.14/lib/rails/initializable.rb:54:in `run_initializers' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/railties-3.2.14/lib/rails/application.rb:136:in `initialize!' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/railties-3.2.14/lib/rails/railtie/configurable.rb:30:in `method_missing' 
     /tmp/build_37zyls4tcoz59/config/environment.rb:5:in `<top (required)>' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activesupport-3.2.14/lib/active_support/dependencies.rb:251:in `require' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activesupport-3.2.14/lib/active_support/dependencies.rb:251:in `block in require' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activesupport-3.2.14/lib/active_support/dependencies.rb:236:in `load_dependency' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/activesupport-3.2.14/lib/active_support/dependencies.rb:251:in `require' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/railties-3.2.14/lib/rails/application.rb:103:in `require_environment!' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/railties-3.2.14/lib/rails/application.rb:305:in `block (2 levels) in initialize_tasks' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/actionpack-3.2.14/lib/sprockets/assets.rake:93:in `block (2 levels) in <top (required)>' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/actionpack-3.2.14/lib/sprockets/assets.rake:60:in `block (3 levels) in <top (required)>' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/actionpack-3.2.14/lib/sprockets/assets.rake:23:in `invoke_or_reboot_rake_task' 
     /tmp/build_37zyls4tcoz59/vendor/bundle/ruby/2.0.0/gems/actionpack-3.2.14/lib/sprockets/assets.rake:29:in `block (2 levels) in <top (required)>' 
     Tasks: TOP => environment 
     (See full trace by running task with --trace) 
     Precompiling assets failed, enabling runtime asset compilation 
     Injecting rails31_enable_runtime_asset_compilation 
     Please see this article for troubleshooting help: 
     http://devcenter.heroku.com/articles/rails31_heroku_cedar#troubleshooting 
+0

Вы установили 'RAILS_ENV' для чего-то другого, кроме производства на героку? Я также попытался вытащить команду драгоценных камней из группы производства. –

+0

Вам также нужно выполнить 'gem install activerecord-postgresql-adapter' или добавить его в свой Gemfile. – vee

+0

Он все еще не работает. Я добавил ENV ['RAILS_ENV'] || = 'production' в мою среду. Rb. Я также добавил gem activerecord-postgresql-адаптер, и я также удалил тег активов и продукции. – gadreel

ответ

-1

О нет ... решение заключалось в том, чтобы удалить мое git-репо и создать новый. Я не знаю, почему, но мой репо перепутался (я добавил новые файлы и т. Д.), И поэтому он не передал все данные. После кончика chucknelson я попытался заблокировать определенную версию рельсов и увидел, что героику этого не удалось.

+0

Это не должен быть «принятый ответ», –

2

в соответствии с gemfile:

# Postgres support (added for Heroku) 
#gem 'pg' 

pg закомментировано. раскомментировать это установить его

gem 'pg' 

В моем Gemfile, например, я работаю в окнах, и Heroku не делает. Так что у меня

gem "pg", '~> 0.15.1', :group => :production 
group :development, :test do 
    gem 'pg', "~> 0.15.1", :platform => [:mswin, :mingw] 

, так как вы должны быть установлены некоторые дб, preferbly П.Г., так как это Heroku

также, как и Гэвин в комментарии сказал - убедитесь, что вы в производстве, так как кажется, что Heroku Безразлично Не думаю, что o ..

+0

После этого вы можете безопасно удалить и из группы 'production'. –

+0

Думаю, я тоже это пробовал. Я буду проверять его снова. В примере я имел это также в теге производства и вне этого тега. – gadreel

+0

Это не сработало. Я установил пакет. git совершить. heroku push master – gadreel

0

Проблема в том, что у вас есть жемчужина pg в производственной группе. Поэтому, когда активы предварительно скомпилированы на Heroku (который использует группу глобальных групп + активов), жемчуг PG не может быть найден, потому что он находится в производственной группе.

Я предлагаю иметь жемчужину pg в глобальной группе и иметь доступ к группам активов.

+0

Как я уже упоминал, я также пробовал это. Он все еще не работает. – gadreel

Смежные вопросы