Jakarta ee 在生产部署时使用liquibase自动回滚
我在一个带有liquibase maven插件的JavaEE项目中使用liquibase工具进行数据库更改。到目前为止,我在我当地的机器上试用过,但需要在生产中进行下一步 本地我可以进行更新、回滚、将标记作为一种检查点并替换备份。更新已经完全自动化。其在项目运行前执行:Jakarta ee 在生产部署时使用liquibase自动回滚,jakarta-ee,maven,liquibase,Jakarta Ee,Maven,Liquibase,我在一个带有liquibase maven插件的JavaEE项目中使用liquibase工具进行数据库更改。到目前为止,我在我当地的机器上试用过,但需要在生产中进行下一步 本地我可以进行更新、回滚、将标记作为一种检查点并替换备份。更新已经完全自动化。其在项目运行前执行: <plugin> <groupId>org.liquibase</groupId> <artifactId>liquibase-maven-plugin</artif
<plugin>
<groupId>org.liquibase</groupId>
<artifactId>liquibase-maven-plugin</artifactId>
<version>2.0.5</version>
<configuration>
..
</configuration>
<executions>
<execution>
<phase>process-resources</phase>
<goals>
<goal>update</goal>
</goals>
</execution>
</executions>
</plugin>
在poduction服务器上,我希望一切都完全自动化。我主要对部署失败时的db回滚感兴趣,我需要返回到项目的私有版本。设置标记的工作方式应如中所述 但是我如何管理完全自动化的回滚
通常的做法是:备份、更新、运行。如果失败,请返回backup1。这是自动可能的吗?我担心一旦某个东西失败(在运行项目时),您就不能再自动执行回滚了。我不相信在Maven中动态启用/禁用插件执行是可能的。你必须提前知道更新是否成功,当然你不会 但是,您可以通过在更新过程运行后设置success/failure属性来实现这一点。您可以通过连接将Ant脚本轻松地连接到Maven中
mvn liquibase:tag -Dliquibase.tag=release1
mvn liquibase:rollback -Dliquibase.rollbackTag=release1