1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/ffsync_ynh.git synced 2024-09-03 18:26:38 +02:00
ffsync_ynh/scripts/restore
2019-11-01 22:04:39 +01:00

66 lines
2.2 KiB
Bash

#!/bin/bash
#=================================================
# GENERIC START
#=================================================
# IMPORT GENERIC HELPERS
source /usr/share/yunohost/helpers
# Exit if an error occurs during the execution of the script
ynh_abort_if_errors
# Import common cmd
source ../settings/scripts/experimental_helper.sh
source ../settings/scripts/_common.sh
# LOAD SETTINGS
ynh_script_progression --message="Loading settings..."
domain=$(ynh_app_setting_get --app $app --key domain)
path_url=$(ynh_app_setting_get --app $app --key path)
final_path=$(ynh_app_setting_get --app $app --key final_path)
db_name=$(ynh_app_setting_get --app $app --key db_name)
# CHECK IF THE APP CAN BE RESTORED
ynh_webpath_available --domain $domain --path_url $path_url || ynh_die --message "$domain/$path_url is not available, please use an other domain or path."
#=================================================
# STANDARD RESTORATION STEPS
#=================================================
# Restore all config and data
ynh_script_progression --message="Restoring files..." --weight=5
ynh_restore
# RESTORE THE MYSQL DATABASE
ynh_script_progression --message="Restoring database..." --weight=3
db_pwd=$(ynh_app_setting_get --app $app --key mysqlpwd)
ynh_mysql_setup_db --db_user "$db_name" --db_name "$db_name" --db_pwd "$db_pwd"
ynh_mysql_connect_as --user "$db_name" --password "$db_pwd" --database "$db_name" < ./db.sql
# RECREATE THE DEDICATED USER
ynh_script_progression --message="Recreating the dedicated system user..."
ynh_system_user_create --username "$app"
usermod --append --groups www-data "$app"
# REINSTALL DEPENDENCIES
ynh_script_progression --message="Reinstalling dependencies..." --weight=5
ynh_install_app_dependencies $dependances
# set authorizations
ynh_script_progression --message="Protecting directory..."
set_permissions
# ADVERTISE SERVICE IN ADMIN PANEL
yunohost service add "uwsgi-app@$app.service" --log "/var/log/uwsgi/app/$app"
ynh_script_progression --message="Reloading services..." --weight=3
systemctl daemon-reload
systemctl enable "uwsgi-app@$app.service"
# RELOAD NGINX AND UWSGI
systemctl start "uwsgi-app@$app.service"
systemctl reload nginx
ynh_script_progression --message="Restoration completed for $app" --last