#!/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