Одно условие Liquibase для нескольких наборов изменений - PullRequest
0 голосов
/ 17 сентября 2018

У меня есть несколько наборов изменений, которые я хотел бы запустить, если существует определенное условие. Например, запускать наборы изменений 1, 2 и 3 только в том случае, если sqlCheck выполнен с исключительными результатами.

Я могу скопировать предварительное условие в каждую ревизию. Однако такое ощущение, что должен быть более эффективный способ сделать это. По мере роста количества наборов изменений в файлах появляется много таких дубликатов.

Элемент preConditions непосредственно в databaseChangeLog, похоже, настраивает только dbms и runAs.

Есть ли способ определить одно предварительное условие, которое будет использоваться несколькими наборами изменений?

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 17 сентября 2018

К сожалению, это невозможно, но иногда вы можете избежать использования предварительных условий, когда вместо этого объявляете тег property.Например, если у вас есть предварительные условия для разных баз данных, таких как Oracle и SQL Server, которые имеют разные типы данных, такие как number в Oracle и float в SQL Server, вы можете вместо использования предварительного условия для каждой базы данных использовать тег property:

<property dbms="oracle" name="DECIMALTYPE" value="NUMBER" />
<property dbms="mssql" name="DECIMALTYPE" value="FLOAT" />
...