При использовании плагина DB Migration я столкнулся с интересным вопросом. В наших обычных военных развертываниях нам снова и снова нужно запускать определенные сценарии для обновления данных, чтобы приспособиться к нашему измененному коду. Хотя мы все еще можем запускать их извне, мы пытались найти способ добавить их как часть процесса миграции БД.
Теперь один набор этих сценариев можно преобразовать в сценарии миграции и добавить в раздел grailsChange, и они будут работать без проблем. Однако есть еще один набор скриптов, которые проблематичны по нескольким причинам.
- Эти сценарии выполняются снова и снова, поэтому нам придется менять идентификатор при каждом запуске, поскольку мы не хотим дублировать код, теряя при этом исходные изменения.
- Мы передаем параметры этим сценариям из командной строки, и описанным выше методом мы должны добавить их в сами сценарии, что только вызовет проблемы с ремонтопригодностью.
Итак, мой вопрос: существует ли более элегантный способ запуска внешних сценариев Grails или groovy из сценариев миграции БД, чтобы каждый раз, когда нам нужно запускать файл сценария, мы могли создавать журнал изменений с обновленным вызовом и помечать его с помощью приложение.
Я думаю, что некоторое время назад в stackoverflow был пост по этому поводу, но я не могу, ради любви к своей жизни, найти его больше. Любая помощь по этому поводу будет оценена по достоинству.
Спасибо