непрерывная интеграция с MySQL - PullRequest
5 голосов
/ 05 января 2010

Вся моя среда, java, js и php настроены с нашим сервером непрерывной интеграции (Hudson). Но как мне вывести базу данных в смесь?

Я хотел бы развернуть свежие базы данных MySql для модульного тестирования, разработки и qa.

А потом я хотел бы сравнить разработку с производством и иметь скрипт обновления, который будет использоваться для выпуска.

Ответы [ 7 ]

3 голосов
/ 06 января 2010

Я бы посмотрел на liquibase (http://www.liquibase.org/).. Это инструмент миграции базы данных на основе Java с открытым исходным кодом, который может быть интегрирован в ваш скрипт сборки и может обрабатывать анализ базы данных. Я использовал его раньше для управления обновлениями базы данных на Проект до этого с большим успехом.

1 голос
/ 06 января 2010

Напишите скрипт, который устанавливает тестовую базу данных. Запустите его из инструмента сборки, что бы это ни было, до запуска тестов сборки Я делаю это вручную, и это работает довольно хорошо; по-прежнему интегрируя его в Maven. Не должно быть слишком много проблем.

1 голос
/ 06 января 2010

Возможно, исследуйте миграцию базы данных, такую ​​как migrate4j .

1 голос
/ 06 января 2010

Вы можете написать скрипт на Ant для выполнения всего этого и выполнения во время сборки.

0 голосов
/ 16 июня 2010

Дайте http://code.google.com/p/mysql-php-migrations/ попробовать! Очень ориентированный на PHP, но, похоже, хорошо работает для большинства целей.

0 голосов
/ 08 января 2010

Для управления миграциями в вашу базу данных sechema между выпусками вы могли бы сделать намного хуже, чем использовать миграции Scala: http://opensource.imageworks.com/?p=scalamigrations

Это инструмент с открытым исходным кодом, который, как я нашел, хорошо интегрируется в экосистему разработки Java, и имеет дополнительную привлекательность, если кто-то из вашей команды ищет способы представить Scala.

Он также должен быть в состоянии создать базу данных с нуля, для целей тестирования.

0 голосов
/ 06 января 2010

Разве HyperSQL в памяти БД (http://hsqldb.org/) лучше для выполнения ваших тестов?

...