From 5c2a857a257a210786edff5d39fad34e84e54fed Mon Sep 17 00:00:00 2001 From: gau1991 Date: Tue, 11 Nov 2014 17:38:57 +0530 Subject: [PATCH] Improved code --- .../site/migrate/ee_mod_migrate_data.sh | 49 +++++++++++-------- 1 file changed, 28 insertions(+), 21 deletions(-) diff --git a/src/modules/site/migrate/ee_mod_migrate_data.sh b/src/modules/site/migrate/ee_mod_migrate_data.sh index 9ad6bf9e..962bf9cc 100644 --- a/src/modules/site/migrate/ee_mod_migrate_data.sh +++ b/src/modules/site/migrate/ee_mod_migrate_data.sh @@ -6,32 +6,39 @@ function ee_mod_migrate_data() rm -rf /ee-backup/$EE_DOMAIN && mkdir -p /ee-backup/$EE_DOMAIN/ && cd /ee-backup/$EE_DOMAIN/ ee_lib_echo "Copying webroot from $EE_REMOTE_SERVER, please wait..." + # Copy webroot using ssh with the help of rsync if [ "$EE_REMOTE_METHOD" == "ssh" ]; then - # Lets FTP or rsync files - rsync -avz --progress --rsh='sshpass -p$EE_REMOTE_PASSWORD ssh -l $EE_REMOTE_USER' $EE_REMOTE_SERVER:$EE_REMOTE_PATH/ /ee-backup/$EE_DOMAIN/ \ - || ee_lib_error "Unable to migrate data using rsync, exit status = " $? - if [ ! -f /ee-backup/$EE_DOMAIN/wp-config.php ] && [ "$EE_SITE_CREATE_OPTION" != "--html" ] && [ "$EE_SITE_CREATE_OPTION" != "--php" ] && [ "$EE_SITE_CREATE_OPTION" != "--mysql" ]; then - rsync -avz --progress --rsh='sshpass -p$EE_REMOTE_PASSWORD ssh -l $EE_REMOTE_USER' $EE_REMOTE_SERVER:$EE_REMOTE_PATH/../wp-config.php /ee-backup/$EE_DOMAIN/ \ - || ee_lib_error "Unable to migrate data using rsync, exit status = " $? + if [ "$EE_REMOTE_PASSWORD" != "" ]; then + EE_MIGRATE_CMD1='rsync -avz --progress --rsh="sshpass -p$EE_REMOTE_PASSWORD ssh -l $EE_REMOTE_USER" $EE_REMOTE_SERVER:$EE_REMOTE_PATH/ /ee-backup/$EE_DOMAIN/' + EE_MIGRATE_CMD2='rsync -avz --progress --rsh="sshpass -p$EE_REMOTE_PASSWORD ssh -l $EE_REMOTE_USER" $EE_REMOTE_SERVER:$EE_REMOTE_PATH/../wp-config.php /ee-backup/$EE_DOMAIN/' + else + EE_MIGRATE_CMD1='rsync -avz --progress $EE_REMOTE_USER@$EE_REMOTE_SERVER:$EE_REMOTE_PATH/ /ee-backup/$EE_DOMAIN/' + EE_MIGRATE_CMD2='rsync -avz --progress $EE_REMOTE_USER@$EE_REMOTE_SERVER:$EE_REMOTE_PATH/../wp-config.php /ee-backup/$EE_DOMAIN/' + fi + elif [ "$EE_REMOTE_METHOD" == "sftp" ]; then + if [ "$EE_REMOTE_PASSWORD" != "" ]; then + $EE_MIGRATE_CMD1='lftp -e "mirror --verbose -c $EE_REMOTE_PATH /ee-backup/$EE_DOMAIN; quit" -u "$EE_REMOTE_USER,$EE_REMOTE_PASSWORD" sftp://$EE_REMOTE_SERVER' + $EE_MIGRATE_CMD2='lftp -e "get -c $EE_REMOTE_PATH/../wp-config.php; quit" -u "$EE_REMOTE_USER,$EE_REMOTE_PASSWORD" sftp://$EE_REMOTE_SERVER' + else + $EE_MIGRATE_CMD1='lftp -e "mirror --verbose -c $EE_REMOTE_PATH /ee-backup/$EE_DOMAIN; quit" -u "$EE_REMOTE_USER" sftp://$EE_REMOTE_SERVER' + $EE_MIGRATE_CMD2='lftp -e "get -c $EE_REMOTE_PATH/../wp-config.php; quit" -u "$EE_REMOTE_USER" ftp://$EE_REMOTE_SERVER' fi - - # Copy webroot using ftp with the help of lftp elif [ "$EE_REMOTE_METHOD" == "ftp" ]; then - lftp -e "mirror --verbose -c $EE_REMOTE_PATH /ee-backup/$EE_DOMAIN; quit" -u "$EE_REMOTE_USER,$EE_REMOTE_PASSWORD" ftp://$EE_REMOTE_SERVER \ - || ee_lib_error "Unable to migrate data using ftp, exit status = " $? - if [ ! -f /ee-backup/$EE_DOMAIN/wp-config.php ] && [ "$EE_SITE_CREATE_OPTION" != "--html" ] && [ "$EE_SITE_CREATE_OPTION" != "--php" ] && [ "$EE_SITE_CREATE_OPTION" != "--mysql" ]; then - lftp -e "get -c $EE_REMOTE_PATH/../wp-config.php; quit" -u "$EE_REMOTE_USER,$EE_REMOTE_PASSWORD" ftp://$EE_REMOTE_SERVER \ - || ee_lib_error "Unable to migrate data using ftp, exit status = " $? + if [ "$EE_REMOTE_PASSWORD" != "" ]; then + $EE_MIGRATE_CMD1='lftp -e "mirror --verbose -c $EE_REMOTE_PATH /ee-backup/$EE_DOMAIN; quit" -u "$EE_REMOTE_USER,$EE_REMOTE_PASSWORD" ftp://$EE_REMOTE_SERVER' + $EE_MIGRATE_CMD2='lftp -e "get -c $EE_REMOTE_PATH/../wp-config.php; quit" -u "$EE_REMOTE_USER,$EE_REMOTE_PASSWORD" ftp://$EE_REMOTE_SERVER' + else + $EE_MIGRATE_CMD1='lftp -e "mirror --verbose -c $EE_REMOTE_PATH /ee-backup/$EE_DOMAIN; quit" -u "$EE_REMOTE_USER" ftp://$EE_REMOTE_SERVER' + $EE_MIGRATE_CMD2='lftp -e "get -c $EE_REMOTE_PATH/../wp-config.php; quit" -u "$EE_REMOTE_USER" ftp://$EE_REMOTE_SERVER' fi + fi - # Copy webroot using sftp with the help of lftp - elif [ "$EE_REMOTE_METHOD" == "sftp" ]; then - lftp -e "mirror --verbose -c $EE_REMOTE_PATH /ee-backup/$EE_DOMAIN ; quit" -u "$EE_REMOTE_USER,$EE_REMOTE_PASSWORD" sftp://$EE_REMOTE_SERVER \ - || ee_lib_error "Unable to migrate data using sftp, exit status = " $? - if [ ! -f /ee-backup/$EE_DOMAIN/wp-config.php ] && [ "$EE_SITE_CREATE_OPTION" != "--html" ] && [ "$EE_SITE_CREATE_OPTION" != "--php" ] && [ ]"$EE_SITE_CREATE_OPTION" != "--mysql" ]; then - lftp -e "get -c $EE_REMOTE_PATH/../wp-config.php; quit" -u "$EE_REMOTE_USER,$EE_REMOTE_PASSWORD" sftp://$EE_REMOTE_SERVER \ - || ee_lib_error "Unable to migrate data using lftp, exit status = " $? - fi + $EE_MIGRATE_CMD1 \ + || ee_lib_error "Unable to migrate data using rsync, exit status = " $? + if [ ! -f /ee-backup/$EE_DOMAIN/wp-config.php ] && [ "$EE_SITE_CREATE_OPTION" != "--html" ] && [ "$EE_SITE_CREATE_OPTION" != "--php" ] && [ "$EE_SITE_CREATE_OPTION" != "--mysql" ]; then + $EE_MIGRATE_CMD2 \ + || ee_lib_error "Unable to migrate data using rsync, exit status = " $? fi + }