【问题标题】:Do Ecto migration from a release of an elixir app从 elixir 应用程序的版本中进行 Ecto 迁移
【发布时间】:2017-09-02 10:00:11
【问题描述】:

我已经发布了我的 elixir 应用程序。
当应用程序启动时,它开始使用 DB 运行受监督的任务。

DB未迁移时,任务保持错误,应用终止。

我阅读了http://blog.firstiwaslike.com/elixir-deployments-with-distillery-running-ecto-migrations/https://hexdocs.pm/distillery/running-migrations.html,并尝试在它们之后实现迁移功能,但由于需要启动应用程序以加载应用程序的配置并导致命令终止而失败。

当我运行Application.get_all_env(:my_app) 而不启动我的应用程序时,它返回空列表[]。 无论如何在不启动应用程序的情况下运行Ecto.Migrator.run(MyApp.Repo, path, :up, all: true)

【问题讨论】:

    标签: elixir distillery


    【解决方案1】:

    使用Application.load(:my_app) 加载应用程序即可访问环境 - 它不需要启动。

    distillery documentation 中提供了有关运行版本迁移的详细指南。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-03
      相关资源
      最近更新 更多