mirror of
https://github.com/YunoHost-Apps/ffsync_ynh.git
synced 2024-09-03 18:26:38 +02:00
66 lines
2.2 KiB
Bash
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
|