Liquibase Gradle плагин -> Несколько файлов изменений - PullRequest
1 голос
/ 03 февраля 2020

Я использую плагин liquibase gradle и хотел бы указать несколько файлов изменений вместо одного. Изменения, которые необходимо выполнить, зависят от определенных условий.

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

Можно ли иметь массив файлов журнала изменений?

1 Ответ

2 голосов
/ 03 февраля 2020

Полагаю, единственное, что вы можете сделать, это сделать liquibase-changelog.xml "основным" файлом changeLog и включить в него другие файлы changeLog в зависимости от context.

Ваш 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>
...