#!/bin/bash #================================================= # GENERIC START #================================================= # IMPORT GENERIC HELPERS #================================================= # Keep this path for calling _common.sh inside the execution's context of backup and restore scripts source ../settings/scripts/_common.sh source /usr/share/yunohost/helpers #================================================= # RESTORE THE NGINX CONFIGURATION #================================================= ynh_script_progression --message="Restoring the NGINX web server configuration..." --weight=1 ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" ynh_systemd_action --service_name="nginx" --action="reload" #================================================= # RESTORE THE APP MAIN DIR #================================================= ynh_script_progression --message="Restoring the app main directory..." --weight=1 ynh_restore_file --origin_path="$install_dir" rm $install_dir/gunicorn.pid #================================================= # RESTORE THE DATA DIRECTORY #================================================= ynh_script_progression --message="Restoring the data directory..." --weight=1 ynh_restore_file --origin_path="$data_dir" --not_mandatory ynh_script_progression --message="Set file permissions..." myynh_fix_file_permissions #================================================= # PYTHON VIRTUALENV # Maybe the backup contains a other Python version #================================================= ynh_script_progression --message="Create and setup Python virtualenv..." --weight=45 myynh_setup_python_venv #================================================= # RESTORE SYSTEMD #================================================= ynh_script_progression --message="Restoring the systemd $app configuration..." ynh_restore_file --origin_path="/etc/systemd/system/$app.service" systemctl enable $app.service --quiet ynh_systemd_action --service_name=$app --action="start" --log_path="$log_file" #================================================= # INTEGRATE SERVICE IN YUNOHOST #================================================= ynh_script_progression --message="Integrating service in YunoHost..." yunohost service add $app --description="Gunicorn running a FastAPI app" --log="/var/log/$app/$app.log" #================================================= # RESTORE THE LOGROTATE CONFIGURATION #================================================= ynh_script_progression --message="Setup logging..." myynh_setup_log_file ynh_restore_file --origin_path="/etc/logrotate.d/$app" #================================================= # END OF SCRIPT #================================================= ynh_script_progression --message="Restoration completed for $app" --last