2

HerokuアプリのRails3.1から3.2.6へのアップグレードで多くの進歩を遂げています。

私はasset_syncを使用し、アセットをS3にプリコンパイルします。私はasset_sync.rbinitialiserを使用してS3接続の詳細を設定します。

実行しようとするとエラーが発生する

RAILS_ENV=production bundle exec rake assets:precompile

AssetSync: using /Users/bob/work/myapp/config/initializers/asset_sync.rb
rake aborted!
could not connect to server: Permission denied
    Is the server running locally and accepting
    connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?

Tasks: TOP => environment
(See full trace by running task with --trace)
rake aborted!
Command failed with status (1): [/Users/bob/.rvm/rubies/ruby-1.9.3-p...]

それはとても奇妙です。私は、 MACOSXで拒否されたPostgresの許可に従ってその質問と関連するコメントをリッスンしていることを確認しました。

4

1 に答える 1

1

これは asset_sync のエラーではありませんが、アセットのプリコンパイル プロセス自体 (特に heroku で)config.assets.initialize_on_precompile = falseを production または application.rb で試してください。

これにより、アプリケーション コードが不必要に初期化されないようにすることができます。これにより、プリコンパイル時に heroku データベースが使用できなくなる可能性があります。

また、Rails 3.2.6 だけの問題ではなく、3.2.x の問題だと思います。

于 2012-06-17T15:19:32.867 に答える