mirror of
https://github.com/YunoHost-Apps/freshrss_ynh.git
synced 2024-09-03 18:36:33 +02:00
44 lines
1.2 KiB
Bash
44 lines
1.2 KiB
Bash
#!/bin/bash
|
|
|
|
set -eu
|
|
|
|
# The parameter $1 is the backup directory location dedicated to the app
|
|
BACKUP_DIR=$1
|
|
|
|
# The parameter $2 is the id of the app instance ex: strut__2
|
|
APP=$2
|
|
dbname=$APP
|
|
dbuser=$APP
|
|
|
|
# Source app helpers
|
|
. /usr/share/yunohost/helpers
|
|
|
|
# retrieve useful param
|
|
domain=$(ynh_app_setting_get ${APP} domain)
|
|
path=$(ynh_app_setting_get ${APP} path)
|
|
dbpass=$(ynh_app_setting_get ${APP} mysqlpwd)
|
|
|
|
# Check domain/path availability
|
|
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}
|
|
sudo mkdir $final_path
|
|
sudo cp -a ${BACKUP_DIR}/www/. $final_path
|
|
|
|
# Restore permissions
|
|
sudo chown -R root:root $final_path
|
|
sudo chown -R www-data: $final_path/data/
|
|
sudo chown -R www-data: $final_path/extensions/
|
|
|
|
# Restore conf files
|
|
sudo cp -a "${BACKUP_DIR}/conf/${APP}.conf" /etc/nginx/conf.d/$domain.d/${APP}.conf
|
|
sudo cp -a "${BACKUP_DIR}/conf/${APP}" /etc/cron.d/${APP}
|
|
|
|
# Restore mysql dump
|
|
ynh_mysql_create_db "$dbname" "$dbuser" "$dbpass"
|
|
ynh_mysql_connect_as "$dbuser" "$dbpass" "$dbname" < "${BACKUP_DIR}/${APP}.dmp"
|
|
|
|
# Reload Nginx, and regenerate SSOwat conf
|
|
sudo service nginx reload
|
|
sudo yunohost app ssowatconf
|