У вас нет непрерывной интеграции, если у вас нет реальной интеграции . Это означает, что все компоненты, необходимые для запуска вашего программного обеспечения, должны быть частью CI, в противном случае у вас есть что-то более сложное, чем управление исходным кодом, но никаких реальных преимуществ CI.
Без базы данных в CI вы не сможете откатиться до определенной версии приложения и не сможете запустить свой тест в реальной, всегда полной среде.
Это, конечно, нелегкий предмет. В проекте, в котором я работаю, мы используем alter
скрипты, которые необходимо проверить вместе с изменениями исходного кода. Эти сценарии выполняются в нашей тестовой базе данных, чтобы гарантировать не только правильность текущей сборки, но также и то, что возможно обновление / понижение одной версии вверх / вниз, а сам процесс обновления ничего не портит. Я считаю, что это лучшее решение, чем удаление и воссоздание всей базы данных, оно позволяет вам иметь последовательный путь для постепенного обновления базы данных и позволяет использовать базу данных в некоторой тестовой среде - с данными, пользователями и т. Д.