自定义 Heroku 构建包中何时何地在环境中提供配置变量



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

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

    config.assets.initialize_on_precompile = false

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

我需要运行rake i18n:js:export,这需要环境。 *构建包中是否有任何点可以添加此调用并确保与 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?

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

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

最新更新