- Добавить в файл application.properties логин и пароль к локальной базе,
- Добавить в файл ConnectionServiceImpl.java переменные для доступа к требуемой базе,
- Если хочется получать уведомления в скайп о процессе выполнения, нужно добавить в файл SkypeUtils.java необходимые переменные, которые можно использовать в методе MigrationServiceImpl::validatePermissionAndStartMigration
Есть 3 типа слушателей:
- TaskListenerComplete
- TaskListenerPartComplete
- TaskListenerError
Нужно выбрать один из подходов: автоматическое чтение из папки todo по версии спринта или скрипты из файла Queries.java. Для первого варианта необходимо MigrationServiceImpl.DELTA присвоить значение, равное текущему устанавливаемому спринту. Программа вычитает все файлы из папки mvd-soop/soop-db/sql/todo, название которых начинается с "V" + sprint, заканчивается на "__MIGRATION.sql".
private final static int SPRINT = 67;
ReadingUtils.getQueriesInfoBySprint(SPRINT)
.forEach(queryInfo -> queryPartialUpdate(queryInfo.get(0), queryInfo.get(1), queryInfo.get(2), connection));
Для второго варианта необходимо добавить запрос в файл Queries.java и использовать его в MigrationServiceImpl::startMigration.
public static String q1 = ""
+ "UPDATE schema.my_table t SET some_field = 57\n"
+ "WHERE t.my_table_id BETWEEN ? AND ?;";
queryPartialUpdate(Queries.q1, "schema.my_table", "my_table_id", connection);
Запуск осуществляется методом main() из класса DemoSpringApplication
- Генерация ключей
http://localhost:8181/key/new/5
- Запуск миграции
http://localhost:8181/migration/{key}/start
Вместо {key} использовать один из ключей. Потом он станет неактивным.
Шаблон для Postman можно взять отсюда.