推送时Heroku无效DATABASE_URL - Heroku bug,现在修复

时间:2013-07-23 23:41:39

标签: activerecord heroku sinatra

编辑:

这是他们修复过的Heroku的临时错误。


我上周推送/部署到heroku失败了。这是一个在雪松堆上使用activerecord的sinatra应用程序。

我能够在Heroku中部署并运行多次我的应用程序。我正在使用postgres和雪松堆。

我已经对app.rb进行了一次空格更改并推送,并且不接受推送。

该应用目前正在使用上周的代码在服务器上工作。它正在使用数据库,所以它可以看到它。

Heroku info和heroku config正确列出了DATABASE_URL。

我已经创建了一个新数据库,并提升了它,但它没有帮助(正在运行的实例使用了新数据库)。

我创建了一个在雪松堆上运行的新dyno,设置了一个新的db并配置了它但是无法将代码推送到它同样的错误。

以下是错误消息: 在这种情况下,我正在尝试使用最新版本的sinatra activerecord来查看是否存在错误(它没有帮助)

git push heroku heroku_bug_before:master
Counting objects: 20, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (14/14), done.
Writing objects: 100% (14/14), 1.60 KiB, done.
Total 14 (delta 9), reused 0 (delta 0)

-----> Ruby/Rack app detected
-----> Using Ruby version: ruby-1.9.2
-----> 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/..
       Using i18n (0.6.1)
       Using multi_json (1.7.7)
       Using activesupport (3.2.13)
       Using builder (3.0.4)
       Using activemodel (3.2.13)
       Using arel (3.0.2)
       Using tzinfo (0.3.37)
       Using activerecord (3.2.13)
       Using backports (3.3.3)
       Using bond (0.4.3)
       Using eventmachine (1.0.3)
       Using kgio (2.8.0)
       Using libxml-ruby (2.6.0)
       Using mime-types (1.23)
       Using oj (2.1.4)
       Using pg (0.15.1)
       Using r18n-core (1.1.5)
       Using rack (1.5.2)
       Using rack-protection (1.5.0)
       Using rack-test (0.6.2)
       Using raindrops (0.11.0)
       Using rest-client (1.6.7)
       Using ripl (0.7.0)
       Using ripl-multi_line (0.3.1)
       Using ripl-rack (0.2.0)
       Using tilt (1.4.1)
       Using sinatra (1.3.2)
       Installing sinatra-activerecord (1.2.3)
       Using sinatra-contrib (1.3.2)
       Using sinatra-flash (0.3.0)
       Using sinatra-r18n (1.1.5)
       Using tux (0.3.0)
       Using unicorn (4.6.3)
       Using bundler (1.3.2)
       Your bundle is complete! It was installed into ./vendor/bundle
       Cleaning up the bundler cache.
       Removing sinatra-activerecord (1.2.2)
-----> Writing config/database.yml to read from DATABASE_URL
 !
 !     rake aborted!
 !     Invalid DATABASE_URL
 !     (erb):9:in `rescue in <main>'
 !     (erb):6:in `<main>'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/erb.rb:753:in `eval'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/erb.rb:753:in `result'
 !     /tmp/build_2b0q7ep6511dz/vendor/bundle/ruby/1.9.1/gems/sinatra-activerecord-1.2.3/lib/sinatra/activerecord.rb:39:in `database_file='
 !     /tmp/build_2b0q7ep6511dz/vendor/bundle/ruby/1.9.1/gems/sinatra-1.3.2/lib/sinatra/base.rb:983:in `set'
 !     /tmp/build_2b0q7ep6511dz/vendor/bundle/ruby/1.9.1/gems/sinatra-activerecord-1.2.3/lib/sinatra/activerecord.rb:50:in `registered'
 !     /tmp/build_2b0q7ep6511dz/vendor/bundle/ruby/1.9.1/gems/sinatra-1.3.2/lib/sinatra/base.rb:1262:in `block in register'
 !     /tmp/build_2b0q7ep6511dz/vendor/bundle/ruby/1.9.1/gems/sinatra-1.3.2/lib/sinatra/base.rb:1260:in `each'
 !     /tmp/build_2b0q7ep6511dz/vendor/bundle/ruby/1.9.1/gems/sinatra-1.3.2/lib/sinatra/base.rb:1260:in `register'
 !     /tmp/build_2b0q7ep6511dz/vendor/bundle/ruby/1.9.1/gems/sinatra-1.3.2/lib/sinatra/base.rb:1590:in `register'
 !     /tmp/build_2b0q7ep6511dz/vendor/bundle/ruby/1.9.1/gems/sinatra-1.3.2/lib/sinatra/base.rb:1630:in `register'
 !     /tmp/build_2b0q7ep6511dz/vendor/bundle/ruby/1.9.1/gems/sinatra-activerecord-1.2.3/lib/sinatra/activerecord.rb:76:in `<module:Sinatra>'
 !     /tmp/build_2b0q7ep6511dz/vendor/bundle/ruby/1.9.1/gems/sinatra-activerecord-1.2.3/lib/sinatra/activerecord.rb:6:in `<top (required)>'
 !     /tmp/build_2b0q7ep6511dz/app.rb:2:in `require'
 !     /tmp/build_2b0q7ep6511dz/app.rb:2:in `<top (required)>'
 !     /tmp/build_2b0q7ep6511dz/Rakefile:1:in `require'
 !     /tmp/build_2b0q7ep6511dz/Rakefile:1:in `<top (required)>'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/rake.rb:2373:in `load'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/rake.rb:2373:in `raw_load_rakefile'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/rake.rb:2007:in `block in load_rakefile'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/rake.rb:2058:in `standard_exception_handling'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/rake.rb:2006:in `load_rakefile'
 !     (eval):1:in `block in standard_rake_options'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/rake.rb:2213:in `eval'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/rake.rb:2213:in `block in standard_rake_options'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/optparse.rb:1308:in `call'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/optparse.rb:1308:in `block in parse_in_order'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/optparse.rb:1264:in `catch'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/optparse.rb:1264:in `parse_in_order'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/optparse.rb:1258:in `order!'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/optparse.rb:1349:in `permute!'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/optparse.rb:1370:in `parse!'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/rake.rb:2303:in `handle_options'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/rake.rb:1999:in `block in init'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/rake.rb:2058:in `standard_exception_handling'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/rake.rb:1997:in `init'
 !     /tmp/ruby-1.9.2/lib/ruby/1.9.1/rake.rb:1990:in `run'
 !     /tmp/ruby-1.9.2/bin/rake:31:in `<main>'
 !     (in /tmp/build_2b0q7ep6511dz)
 !
sh: Syntax error: Unterminated quoted string

 !     Push rejected, failed to compile Ruby/Rack app

heroku config(你可以看到我添加和推广的额外数据库)

=== visualtags Config Vars
DATABASE_URL:                 postgres://changed1:changed@ec2-54-217-215-81.eu-west-1.compute.amazonaws.com:5432/changed1
HEROKU_POSTGRESQL_COBALT_URL: postgres://changed2:changed@ec2-54-217-215-81.eu-west-1.compute.amazonaws.com:5432/changed2
HEROKU_POSTGRESQL_CYAN_URL:   postgres://changed3:changed@ec2-54-217-215-96.eu-west-1.compute.amazonaws.com:5432/changed3

heroku pg:info

=== HEROKU_POSTGRESQL_COBALT_URL (DATABASE_URL)
Plan:        Dev
Status:      available
Connections: 4
PG Version:  9.2.4
Created:     2013-07-23 17:49 UTC
Data Size:   6.4 MB
Tables:      2
Rows:        4/10000 (In compliance) - refreshing
Fork/Follow: Unsupported
Region:      Europe

heroku信息

=== herokuapp
Addons:        heroku-postgresql:dev
               heroku-postgresql:dev

Git URL:       xxx
Owner Email:   mine@example.com
Region:        eu
Repo Size:     8M
Slug Size:     17M
Stack:         cedar
Tier:          Legacy
Web URL:       http://xxx.herokuapp.com/

我花了好几个小时 - 它上周工作了,但现在它已经不再适用了。我正在使用Unicorn和ActiveRecord并遵循文档中的建议...

有什么想法吗?

1 个答案:

答案 0 :(得分:-1)

与Padrino / Datamapper和Heroku Postgre Basic计划相同的问题,我从今天早上起就无法部署。

当我运行'heroku config'时,似乎正确设置了DATABASE_URL配置var,我可以使用ENV ['DATABASE_URL']从Padrino控制台访问它,所以不确定是什么导致了这个问题。

此人configuring heroku database connection in padrino - DATABASE_URL fails已经能够直接使用HEROKU_POSTGRESQL_color_URL并修复了它,但不能用于我的应用。

看起来像Heroku部署脚本的问题,最好的办法是与他们一起提出一张票https://help.heroku.com/tickets/new?query=postgre

(对不起,这是一个评论而非实际答案,显然我没有足够的代表评论)


编辑:Heroku回复我的机票说问题已解决,我可以再次成功部署我的应用程序。