создать правила проверки ревизии ревизии ликвидазы - PullRequest
0 голосов
/ 30 июня 2019

Как я могу создать собственные правила набора изменений в liquibase?

Проблема

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

Решение, которое я думал Создайте пользовательское правило для проверки наборов изменений, в котором мы запрещаем такие изменения, как: dropColumn, delete, dropTable, renameColumn

Все эти изменения могут нарушить сборку на maven, кроме случаев, когда есть комментарий к тому же набору изменений с чем-то вроде «я знаю, что я делаю».

Вопрос

Предлагает ли liquibase какую-либо точку расширения, где я могу создать это правило?

1 Ответ

2 голосов
/ 30 июня 2019

Рассматривали ли вы введение обзоров кода вместо? С другой стороны, если ваша цель состоит не в том, чтобы запретить использование dropColumn, а в том, чтобы аннотировать его, чтобы убедиться, что разработчик знает, что он / она делает, тогда вы можете ввести два интерфейса, например. BackwardCompatibleLiquibase и BackwardIncompatibleLiquibase - первый интерфейс будет содержать «безопасные» методы, а другой - все.

ИМХО, лучше обучить людей в вашей команде тому, как вносить изменения, которые не повредят БД, вместо введения средства проверки наборов изменений, потому что, если никто не просматривает наборы изменений, есть вероятность, что люди взломают ваш валидатор или добавят пример. комментарий «я знаю, что я делаю» к каждому набору изменений, поэтому сборка всегда будет проходить

...