diff --git a/config.txt-test b/config.txt-test new file mode 100644 index 0000000..0049bba --- /dev/null +++ b/config.txt-test @@ -0,0 +1,93 @@ +#!Невнимательное использование скрипта может привести к потере данных! + +Укажи значение переменной PLATFORM_STATUS Остановить платформу на исходном сервере? +1 - остановить платформу на исходном сервере +0 - не останавливать платформу на исходном сервере + +PLATFORM_STATUS=0 + +Как называется сервис платформы на исходном сервере (platform5, 6 и т.д.). Слово service добавлять не нужно + +PLATFORM_SERVICE_NAME=platform5 + + +#Укажи значение переменной EVENT_STORE ниже +# 0 - снять дамп без event_store +# 1 - снять дамп с event_store +# 2 - не снимать дамп + +EVENT_STORE=1 + + +#Укажи значение переменной EVT_COMMON +# 0 - чтобы скачать только файлы из evt/common +# 1 - чтобы скачать папку evt целиком +# 2 - чтобы ничего не качать +# 3 - чтобы скачать список папок, указанных в переменной FOLDERS. Соблюдай синтаксис! Папки перечисляются через запятую, без проблелов + +EVT_COMMON=1 + +FOLDERS="badges,export,import" + +# Пароль БД исходного сервера +SOURCE_DB_PASSWORD=anna5kanna + +#Имя БД на исходном сервере +SOURCE_DB_NAME=mynewdb + +#Номер evt на исходном сервере +SOURCE_EVT=evt4 + +#Как называется сервис платформы на серваке, с которго съезжаем +PLATFORM_SERVICE=platform5.service + +#Имя БД на локалке. Будет создана БД с таким именем. Имя бд нужно указать маленькими буквами +DESTINATION_DB_NAME=locality409 + +############################################### + +#IP локалки с платформой +DESTINATION_IP=217.107.34.92 + +#Пользователь локалки с платформой +DESTINATION_USER=root + +#Пароль локалки с платформой +DESTINATION_PASSWORD=123saveme + +#SSH порт локалки с платформой +DESTINATION_PORT=22 + +############################################### + +#IP локалки с базой +DESTINATION_DATABASE_IP=217.107.34.92 + +#Пользователь локалки с базой +DESTINATION_DATABASE_USER=root + +#SSH Пароль локалки с базой +DESTINATION_DATABASE_PASSWORD=123saveme + +#SSH порт локалки с базой +DESTINATION_DATABASE_PORT=22 + +#Postgres пароль локалки с базой +DESTINATION_POSTGRES_PASSWORD=anna5kanna + +################################################## + +#Где платформа на исходном серевере (не надо добавлять слэш в конце;) +SOURCE_PLATFORM_PATH=/home/platform5-server + +#Где платформа на локалке +DESTINATION_PLATFORM_PATH=/home/platform5-server + + +мувать платформу в платформа-дата +качать платорму кроме ыторалда и логов + + ++опционально гасить платформу + ++поправить регулярку в дбконф diff --git a/migration.sh b/migration.sh index 641f241..c3d7cdf 100644 --- a/migration.sh +++ b/migration.sh @@ -111,6 +111,19 @@ fonts_rsync else echo "EVENT_COMMON value must be 0 or 1 or 2" && exit fi +download_platform(){ +# 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 "mv /home/platform5-server /home/platform5-server-${DATE} && mkdir -p /home/platform5-server && mkdir -p /home/platform5-server/storage && mkdir -p /home/platform5-server/storage/1" +PLATFORM_DIRS="conf,lib,opencv,webapp,scripts,SERVER_config.txt,bin/server," + IFS=',' read -r -a array <<< "$PLATFORM_DIRS" + + for folder in "${array[@]}"; do + yes | sshpass -p "$DESTINATION_PASSWORD" rsync -e "ssh -p $DESTINATION_PORT -o StrictHostKeyChecking=no" -avz --ignore-existing $SOURCE_PLATFORM_PATH/bin/storage/1/$SOURCE_EVT/$folder $DESTINATION_USER@$DESTINATION_IP:$DESTINATION_PLATFORM_PATH/bin/storage/1/$SOURCE_EVT/ + done + +} + if [[ "PLATFORM_STATUS" == 1 ]]; then echo "start $PLATFORM_SERVICE_NAME"