Мне нужно выполнить конкретную миграцию для некоторых тестов. Поэтому я хотел бы отделить эту тестовую миграцию от других миграций. Я думал сделать второй мастер-файл liquibase (test/resources/db/liquibase-master.xml), который включает в себя первый + миграцию, которая мне нужна только для тестов. Я не уверен, что это вообще возможно. Это правильный путь, или есть другой лучший способ?
конфигурация liquibase с 2 мастер-файлами - возможно ли это?
Ответы (1)
Ниже приведен способ достижения того, что вам нужно, с помощью одного главного файла и использования контекстов. И документ об этом: https://www.liquibase.org/documentation/contexts.html< /а>
Конфигурация разработки: src/main/config/application-dev.yml
liquibase:
contexts: dev
Тестовая конфигурация: src/test/config/application.yml
liquibase:
contexts: test
Пример набора изменений: ChangeSet_xxx_.xml
<changeSet id="x1" context="dev">
<!-- Executed in dev context only -->
</changeSet>
<changeSet id="x2" context="test">
<!-- Executed in test context only -->
</changeSet>
<changeSet id="x3" context="test,dev">
<!-- Executed in both contexts -->
</changeSet>
person
Olivier Depriester
schedule
12.05.2020
LiquibaseProperties
есть атрибутchangeLog
. Таким образом, вы должны иметь возможность установить мастер-файл в файлеapplication.properties
по умолчанию, а другой - в файлеapplication-test.properties
для тестового профиля. - person Olivier Depriester   schedule 12.05.2020context
ChangeSet
для установки, и в этом случае будет применятьсяChangeSet
. - person Olivier Depriester   schedule 12.05.2020