根据更改日志文件条目进行回滚和更新



目前我有一个jenkins服务器,它将有多个节点。在每个节点中,我都有一个数据库在运行,以支持该特定节点中的测试。我还在所有节点中构建不同的功能分支。

这个环境有一个警告,那就是数据库。不同的分支可以有不同版本的数据库,不幸的是,我无法在每次构建时删除并创建完整的数据库。所以我需要使用liquibase的更新和回滚。

目前,我的maven编译周期中有liquibase,所以它可以自动工作。但我需要能够根据当前文件更新和回滚更改。

当前行为只允许我在出现新的变更集时进行更新。

示例:

分支主机具有变更集B、C、D

分支F1具有变更集B、C、D、E

分支F2具有变更集B、C、D

我为F1运行任务,变更集E被添加到数据库中。之后如果我运行分支F2,我需要它回滚到变更集D,但需要更新不允许我这么做。

感谢

对于这样的测试,我们要做的一件事就是使用Liquibase的dropAll功能。它比完全删除和重新创建数据库更快,但同时也满足了许多相同的目标——拥有一个干净的空数据库,然后可以使用Liquibase更新来创建模式,然后对此进行测试。

有一个maven插件任务可以做到这一点。http://www.liquibase.org/documentation/maven/maven_dropall.html

相关内容

  • 没有找到相关文章

最新更新