在Azure Devops上自动执行FluentMigrator回滚

问题描述 投票:1回答:1

[目前有一个发布管道,该管道可以向上运行我的迁移项目-例如

  • Web应用程序项目已部署到环境中
  • 在解决方案中,我们有一个流畅的移民项目
  • 作为发布渠道的一部分,我们将向上迁移到最新版本

如果我想将Web应用回滚到较早的版本,上述所有方法都非常有用,但是我需要以某种方式将要回滚的版本传递给流畅的migrator进程-目前,我不确定如何我会做到的。几乎就像我需要知道先前版本中部署的版本。

当前,我回滚Web应用程序,我必须手动运行fluent migrator才能回滚到我需要的数据库版本。

有人能使流利的迁移器完全自动化吗?

FYI我的迁移号使用的是日期时间,以毫秒为单位,是从https://currentmillis.com/中获得的毫秒数>]

更新:

我有计划以某种方式获得项目中的最新迁移,并使用该数字作为参数来提高或降低它的运行速度。但是,经过仔细考虑,作为发行版一部分运行的迁移仅知道构建该发行版中的代码时存在的迁移。它不可能知道任何后续迁移都能够回滚数据库...

我想我需要以某种方式提取最新代码,构建它,然后运行适当的迁移。我不确定这是否可能。可能必须遵循手动数据库回滚过程。

[目前有一个发布管道可以向上运行我的迁移项目-例如Web应用程序项目已部署到环境中。在解决方案中,我们有一个流畅的迁移器项目,如...

azure-devops azure-deployment fluent-migrator
1个回答
0
投票

一种不太好用的解决方案是将所有迁移标识符附加到属于部署工件的文件中。这样,前向迁移使用最后一个条目,后向迁移使用倒数第二个条目。

© www.soinside.com 2019 - 2024. All rights reserved.