From 391fbd895d7c53ad497f6829acff8c704d76dad9 Mon Sep 17 00:00:00 2001 From: "M.Goldshteyn" Date: Thu, 12 Sep 2024 15:21:56 +0300 Subject: [PATCH] start --- config.txt | 23 ++++++++++++++++++++++- migration.sh | 27 +++++++++++++++++++-------- 2 files changed, 41 insertions(+), 9 deletions(-) diff --git a/config.txt b/config.txt index 4f3487a..0049bba 100644 --- a/config.txt +++ b/config.txt @@ -1,4 +1,15 @@ -#Внимание! +#!Невнимательное использование скрипта может привести к потере данных! + +Укажи значение переменной PLATFORM_STATUS Остановить платформу на исходном сервере? +1 - остановить платформу на исходном сервере +0 - не останавливать платформу на исходном сервере + +PLATFORM_STATUS=0 + +Как называется сервис платформы на исходном сервере (platform5, 6 и т.д.). Слово service добавлять не нужно + +PLATFORM_SERVICE_NAME=platform5 + #Укажи значение переменной EVENT_STORE ниже # 0 - снять дамп без event_store @@ -27,6 +38,9 @@ SOURCE_DB_NAME=mynewdb #Номер evt на исходном сервере SOURCE_EVT=evt4 +#Как называется сервис платформы на серваке, с которго съезжаем +PLATFORM_SERVICE=platform5.service + #Имя БД на локалке. Будет создана БД с таким именем. Имя бд нужно указать маленькими буквами DESTINATION_DB_NAME=locality409 @@ -70,3 +84,10 @@ SOURCE_PLATFORM_PATH=/home/platform5-server DESTINATION_PLATFORM_PATH=/home/platform5-server +мувать платформу в платформа-дата +качать платорму кроме ыторалда и логов + + ++опционально гасить платформу + ++поправить регулярку в дбконф diff --git a/migration.sh b/migration.sh index 085e814..641f241 100644 --- a/migration.sh +++ b/migration.sh @@ -14,8 +14,16 @@ DATE="$(date +%Y-%m-%d_%H-%M-%S)" echo $DATE #1. We are on the source (e.g. main) -systemctl is-active --quiet platform5.service && systemctl stop platform5 -systemctl is-active --quiet platform6.service && systemctl stop platform6 +#systemctl is-active --quiet platform5.service && systemctl stop platform5 +#systemctl is-active --quiet platform6.service && systemctl stop platform6 + + +if [[ "PLATFORM_STATUS" == 1 ]]; then + echo "echo PLATFORM_STATUS=$PLATFORM_STATUS" + echo "Stopping $PLATFORM_SERVICE_NAME" + systemctl stop $PLATFORM_SERVICE_NAME +fi + DB_BACKUP=$SOURCE_DB_NAME.migration.$DATE.sql echo "backup name:" $DB_BACKUP @@ -52,8 +60,12 @@ create_and_restore_db() { } change_config(){ - sshpass -p "$DESTINATION_PASSWORD" ssh $DESTINATION_USER@$DESTINATION_IP -p $DESTINATION_PORT "sed -i \"s|\(jdbc:postgresql://localhost:5432/\)[^?]*|\1${DESTINATION_DB_NAME}|g\" $DESTINATION_PLATFORM_PATH/conf/db.conf" +# sshpass -p "$DESTINATION_PASSWORD" ssh $DESTINATION_USER@$DESTINATION_IP -p $DESTINATION_PORT "sed -i \"s|\(jdbc:postgresql://localhost:5432/\)[^?]*|\1${DESTINATION_DB_NAME}|g\" $DESTINATION_PLATFORM_PATH/conf/db.conf" + + sshpass -p "$DESTINATION_PASSWORD" ssh $DESTINATION_USER@$DESTINATION_IP -p $DESTINATION_PORT "sed -i \"s|\(jdbc:postgresql://[^:/]*:[0-9]*/\)[^?]*|\1${DESTINATION_DB_NAME}|g\" $DESTINATION_PLATFORM_PATH/conf/db.conf" + } + db_backup send_backup create_and_restore_db @@ -100,11 +112,9 @@ fonts_rsync fi -if systemctl cat platform5 >/dev/null 2>&1; then - service platform5 start -fi -if systemctl cat platform6 >/dev/null 2>&1; then - service platform6 start +if [[ "PLATFORM_STATUS" == 1 ]]; then + echo "start $PLATFORM_SERVICE_NAME" + systemctl start $PLATFORM_SERVICE_NAME fi @@ -113,3 +123,4 @@ fi +