我正在使用liquibase gradle插件,我想指定多个changelog文件,而不只是一个。要运行的变更日志取决于某些条件。

liquibase {
   activities {
   main {
      changeLogFile "liquibase-changelog.xml"
      url 'jdbc:mysql://localhost:3306/world'
      username 'XXX'
      password 'XXX'
     }
  }
 runList = 'main'
}

是否可以有一组变更日志文件?

最佳答案

我猜想,您可以做的唯一开箱即用的事情就是使liquibase-changelog.xml成为“主” changeLog文件,并根据context在其中包含其他changeLog文件。

您的master-liqbuiase-changelog.xml可能如下所示:

<databaseChangeLog
  xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
         http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.8.xsd">

    <include file="liquibase-changelog-1.xml" relativeToChangelogFile="true" context="your_condition_based_on_context"/>
    <include file="liquibase-changelog-2.xml" relativeToChangelogFile="true" context="your_other_condition_based_on_context"/>
    <!-- other changeLog files -->
</databaseChangeLog>

关于gradle - Liquibase Gradle插件->多个changelog文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60038565/

10-13 05:13