From a6348c3fd90b60a3df26c6f184254d2e7497fa7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment?= Date: Tue, 14 Feb 2017 09:40:18 +0100 Subject: [PATCH] cleanup backup and restore scripts --- scripts/backup | 8 +++++--- scripts/restore | 14 +++++++------- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/scripts/backup b/scripts/backup index 64f7ac8..b80ebc0 100755 --- a/scripts/backup +++ b/scripts/backup @@ -8,9 +8,11 @@ BACKUP_DIR=$1 # The parameter $2 is the id of the app instance ex: strut__2 APP=$2 +# Source app helpers +. /usr/share/yunohost/helpers + # retrieve useful param -domain=$(sudo yunohost app setting ${APP} domain) -db_pwd=$(sudo yunohost app setting ${APP} mysqlpwd) +domain=$(ynh_app_setting_get ${APP} domain) # Backup app files sudo mkdir -p "${BACKUP_DIR}/www" @@ -22,4 +24,4 @@ sudo cp -a /etc/nginx/conf.d/$domain.d/${APP}.conf "${BACKUP_DIR}/conf/${APP}.co sudo cp -a /etc/cron.d/${APP} "${BACKUP_DIR}/conf/${APP}" # Backup mysql -mysqldump -u ${APP} -p$db_pwd ${APP} | sudo dd of=${BACKUP_DIR}/${APP}.dmp +ynh_mysql_dump_db ${APP} ${BACKUP_DIR}/${APP}.dmp diff --git a/scripts/restore b/scripts/restore index 2f396f9..a477881 100644 --- a/scripts/restore +++ b/scripts/restore @@ -8,14 +8,15 @@ BACKUP_DIR=$1 # The parameter $2 is the id of the app instance ex: strut__2 APP=$2 +# Source app helpers +. /usr/share/yunohost/helpers + # retrieve useful param -domain=$(sudo yunohost app setting ${APP} domain) -db_pwd=$(sudo yunohost app setting ${APP} mysqlpwd) -path=$(sudo yunohost app setting ${APP} path) +domain=$(ynh_app_setting_get ${APP} domain) +path=$(ynh_app_setting_get ${APP} path) # Check domain/path availability -sudo yunohost app checkurl $domain$path -a ${APP} \ - || (echo "Path not available: $domain$path" && exit 1) +sudo yunohost app checkurl $domain$path -a ${APP} || ynh_die "The path ${domain}${path} is not available for app installation." # Restore sources & data final_path=/var/www/${APP} @@ -32,8 +33,7 @@ sudo cp -a "${BACKUP_DIR}/conf/${APP}.conf" /etc/nginx/conf.d/$domain.d/${APP}.c sudo cp -a "${BACKUP_DIR}/conf/${APP}" /etc/cron.d/${APP} # Restore mysql dump -sudo su -c "mysql -u ${APP} -p$db_pwd ${APP} < ${BACKUP_DIR}/${APP}.dmp" - +ynh_mysql_execute_file_as_root "${BACKUP_DIR}/${APP}.dmp" "${APP}" # Reload Nginx, and regenerate SSOwat conf sudo service nginx reload sudo yunohost app ssowatconf