2

我知道运行期望环境完全工作的 rake 任务需要实际上可以建立数据库连接。基本上,这就是 Heroku 需要在加载环境之前运行资产管道预编译的原因。

这就是为什么需要这条线来将 rails 3.X 应用程序部署到 Cedar:

    config.assets.initialize_on_precompile = false

现在,我正在尝试构建一个自定义构建包,该构建包需要一个 rake 任务来执行其他资产编译,以使应用程序按预期工作。这是因为我已经国际化了 JS 资产文件并使用了https://github.com/fnando/i18n-js

我需要跑步rake i18n:js:export,这需要环境。* buildpack 中是否有任何点可以添加此调用并确保与 Rails 应用程序的数据库的连接正常工作?*加载环境是此任务的要求,我不知道如何解决它,它给出了典型的错误:

rake aborted!
could not connect to server: Connection refused
    Is the server running on host "127.0.0.1" and accepting
    TCP/IP connections on port 5432?

自然,我可以在本地编译然后部署。但是 buildpack 似乎是以自动化方式解决此问题的正确工具。谢谢您的帮助!

4

1 回答 1

5

查看用户环境 Heroku 实验室功能: https ://devcenter.heroku.com/articles/labs-user-env-compile

于 2012-08-10T19:09:48.173 回答