1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/freshrss_ynh.git synced 2024-09-03 18:36:33 +02:00

fix backup and restore

This commit is contained in:
Clément 2017-03-12 19:46:53 +01:00
parent 05d9322017
commit 6320d4f4c6
2 changed files with 15 additions and 17 deletions

View file

@ -14,8 +14,8 @@ domain=$(ynh_app_setting_get "$app" domain)
# Backup app files # Backup app files
ynh_backup "$path" "www" ynh_backup "$path" "www"
# Backup conf files # Backup conf files
ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf" "conf" ynh_backup "/etc/nginx/conf.d/$domain.d/$app.conf" "nginx.conf"
ynh_backup "/etc/cron.d/$app" "cron" ynh_backup "/etc/cron.d/$app" "$app.cron"
# Backup mysql # Backup mysql
ynh_mysql_dump_db $app > $app.dmp ynh_mysql_dump_db $app > $app.dmp

View file

@ -2,29 +2,26 @@
set -eu set -eu
# The parameter $1 is the backup directory location dedicated to the app app=$YNH_APP_INSTANCE_NAME
BACKUP_DIR=$1 db_user=$app
db_name=$app
# The parameter $2 is the id of the app instance ex: strut__2
APP=$2
dbname=$APP
dbuser=$APP
# Source app helpers # Source app helpers
. /usr/share/yunohost/helpers . /usr/share/yunohost/helpers
# retrieve useful param # retrieve useful param
domain=$(ynh_app_setting_get ${APP} domain) domain=$(ynh_app_setting_get $app domain)
path=$(ynh_app_setting_get ${APP} path) path=$(ynh_app_setting_get $app path)
dbpass=$(ynh_app_setting_get ${APP} mysqlpwd) dbpass=$(ynh_app_setting_get $app mysqlpwd)
# Check domain/path availability # Check domain/path availability
sudo yunohost app checkurl $domain$path -a ${APP} || ynh_die "The path ${domain}${path} is not available for app installation." sudo yunohost app checkurl $domain$path -a $app || ynh_die "The path ${domain}${path} is not available for app installation."
# Restore sources & data # Restore sources & data
final_path=/var/www/${APP} final_path=/var/www/$app
sudo mkdir $final_path sudo mkdir $final_path
sudo cp -a ${BACKUP_DIR}/www/. $final_path ynh_backup "www" "$final_path"
# Restore permissions # Restore permissions
sudo chown -R root:root $final_path sudo chown -R root:root $final_path
@ -32,12 +29,13 @@ sudo chown -R www-data: $final_path/data/
sudo chown -R www-data: $final_path/extensions/ sudo chown -R www-data: $final_path/extensions/
# Restore conf files # Restore conf files
sudo cp -a "${BACKUP_DIR}/conf/${APP}.conf" /etc/nginx/conf.d/$domain.d/${APP}.conf ynh_backup "www" "$final_path"
sudo cp -a "${BACKUP_DIR}/conf/${APP}" /etc/cron.d/${APP} ynh_backup "nginx.conf" /etc/nginx/conf.d/$domain.d/$app.conf
ynh_backup "$app.cron" /etc/cron.d/$app
# Restore mysql dump # Restore mysql dump
ynh_mysql_create_db "$dbname" "$dbuser" "$dbpass" ynh_mysql_create_db "$dbname" "$dbuser" "$dbpass"
ynh_mysql_connect_as "$dbuser" "$dbpass" "$dbname" < "${BACKUP_DIR}/${APP}.dmp" ynh_mysql_connect_as "$dbuser" "$dbpass" "$dbname" < "$app.dmp"
# Reload Nginx, and regenerate SSOwat conf # Reload Nginx, and regenerate SSOwat conf
sudo service nginx reload sudo service nginx reload