Я ищу способ ежедневного развертывания и поддержания сценариев базы данных в соответствии с выпусками.
В настоящее время у нас есть достаточно приличный способ развертывания нашего исходного кода, у нас есть покрытие кода модуля, непрерывная интеграция и процедуры отката.
Проблема в том, что скрипты базы данных соответствуют версии. Кажется, что каждый испытывает сценарий в тестовой базе данных, затем запускает их в режиме реального времени, когда обновления ORM обновляются (то есть изменения вступают в силу), а затем выбирает новый столбец.
Первая проблема заключается в том, что ни один из сценариев НЕ ДОЛЖЕН быть написан где-либо, обычно все "пытаются" поместить их в папку Subversion, но некоторые из более ленивых людей просто запускают сценарий вживую, и большую часть времени никто не знает кто что сделал с базой данных.
Вторая проблема заключается в том, что у нас есть 4 тестовые базы данных, и они ВСЕГДА находятся вне очереди, и единственный способ действительно их восстановить - выполнить восстановление из действующей базы данных.
Я убежден, что такой процесс должен быть простым, понятным и простым в использовании, чтобы помочь разработчику, а не мешать ему.
То, что я ищу, - это методики / идеи, которые облегчают разработчику желание записывать свои сценарии базы данных, чтобы их можно было запускать как часть процедуры выпуска. Процесс, которому разработчик хотел бы следовать .
Любые истории, варианты использования или даже ссылки будут полезны.