@superyateam
Java programmer

Как реализовать Continuous Delivery приложения с реляционной СУБД?

Привет всем,

я работаю над приложением - rest api написанное на java (DropWizard), которое хранит всю информацию в MySQL Базе данных. Конкретный список технологий тут наверно не имеет значения. Но тем не менее.

Я сейчас занимаюсь вопросом автоматизации: continuous integration и delivery. И в общем-то с автоматизацией билдов проблем нет - я решил использовать Team City, который при пуше в определенную ветку будет собирать билд, прогонять тесты и выкладывать на продакшн (ну примерно так).

Но вот проблему обновления базы данных мне пока решить не удалось. Допустим очередное обновление сервиса - добавлена новая функциональность: пользователь теперь может указывать несколько телефонов. Для этого помимо изменений в коде надо изменить схему БД.

Как это все автоматизировать? Надо ли мне заводить какой-то специальный репозиторий, где будут храниться SQL скрипты и при пуше, эти скрипты будут запускаться? Что делать потом? как синхронизировать эти два репозитория? Допустим, я изменил функциональность - я сразу коммичу в два репозитория, и потом Team City сначала запускает скрипты на обновление БД, а потом собственно собирает билд новый приложения?

В общем, буду рад любым советам и личному опыту. У меня пока в голове никаких толковых мыслей. Неужели все-таки ручками что-то нужно делать?
  • Вопрос задан
  • 328 просмотров
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы