我有两个liquibase上下文 - 主和测试。 在测试上下文中,有插入测试数据到db。 如果我运行测试,则所有更改集都在使用。 如果我运行应用程序,只有主变更集正在使用。
但是如果我在测试后运行应用程序,我可以在DB(master和test)中看到所有数据。 我想在运行app时自动回滚测试变更集。
我该怎么做?
答案 0 :(得分:0)
在运行应用程序之前,您可以使用liquibase Rollback命令撤消测试上下文的changeSet。
可以使用命令行实用程序Ant或Maven执行回滚或任何其他Liquibase命令。
查看示例mvn liquibase:rollback
-Dliquibase.properties=./project.properties
-Dliquibase.rollbackDate=2016-01-01
-Dliquibase.contexts=test
在这种情况下,我使用了回滚日期模式。它将回滚属于名为test的上下文的2016年1月1日之后执行的所有更改集。