2023-11-28 13:20:48 +01:00
|
|
|
#!/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
|
|
|
|
|
2023-12-02 09:00:21 +01:00
|
|
|
#=================================================
|
|
|
|
# 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"
|
|
|
|
|
2023-11-28 13:20:48 +01:00
|
|
|
#=================================================
|
|
|
|
# RESTORE THE APP MAIN DIR
|
|
|
|
#=================================================
|
|
|
|
ynh_script_progression --message="Restoring the app main directory..." --weight=1
|
|
|
|
|
|
|
|
ynh_restore_file --origin_path="$install_dir"
|
2023-12-02 09:50:04 +01:00
|
|
|
rm $install_dir/gunicorn.pid
|
2023-11-28 13:20:48 +01:00
|
|
|
|
|
|
|
#=================================================
|
|
|
|
# RESTORE THE DATA DIRECTORY
|
|
|
|
#=================================================
|
|
|
|
ynh_script_progression --message="Restoring the data directory..." --weight=1
|
|
|
|
|
|
|
|
ynh_restore_file --origin_path="$data_dir" --not_mandatory
|
|
|
|
|
2023-12-02 09:00:21 +01:00
|
|
|
ynh_script_progression --message="Set file permissions..."
|
|
|
|
myynh_fix_file_permissions
|
2023-11-28 13:20:48 +01:00
|
|
|
|
|
|
|
#=================================================
|
2023-12-02 09:00:21 +01:00
|
|
|
# PYTHON VIRTUALENV
|
|
|
|
# Maybe the backup contains a other Python version
|
2023-11-28 13:20:48 +01:00
|
|
|
#=================================================
|
2023-12-02 09:00:21 +01:00
|
|
|
ynh_script_progression --message="Create and setup Python virtualenv..." --weight=45
|
2023-11-28 13:20:48 +01:00
|
|
|
|
2023-12-02 09:00:21 +01:00
|
|
|
myynh_setup_python_venv
|
|
|
|
|
|
|
|
#=================================================
|
|
|
|
# RESTORE SYSTEMD
|
|
|
|
#=================================================
|
|
|
|
ynh_script_progression --message="Restoring the systemd $app configuration..."
|
2023-11-28 13:20:48 +01:00
|
|
|
|
|
|
|
ynh_restore_file --origin_path="/etc/systemd/system/$app.service"
|
|
|
|
systemctl enable $app.service --quiet
|
2023-12-02 09:00:21 +01:00
|
|
|
ynh_systemd_action --service_name=$app --action="start" --log_path="$log_file"
|
2023-11-28 13:20:48 +01:00
|
|
|
|
2023-12-02 09:00:21 +01:00
|
|
|
#=================================================
|
|
|
|
# INTEGRATE SERVICE IN YUNOHOST
|
|
|
|
#=================================================
|
|
|
|
ynh_script_progression --message="Integrating service in YunoHost..."
|
2023-11-28 13:20:48 +01:00
|
|
|
|
2023-12-04 07:19:43 +01:00
|
|
|
yunohost service add $app --description="Gunicorn running a FastAPI app" --log="/var/log/$app/$app.log"
|
2023-11-28 13:20:48 +01:00
|
|
|
|
|
|
|
#=================================================
|
2023-12-02 09:00:21 +01:00
|
|
|
# RESTORE THE LOGROTATE CONFIGURATION
|
2023-11-28 13:20:48 +01:00
|
|
|
#=================================================
|
2023-12-02 09:00:21 +01:00
|
|
|
ynh_script_progression --message="Setup logging..."
|
2023-11-28 13:20:48 +01:00
|
|
|
|
2023-12-02 09:00:21 +01:00
|
|
|
myynh_setup_log_file
|
|
|
|
ynh_restore_file --origin_path="/etc/logrotate.d/$app"
|
2023-11-28 13:20:48 +01:00
|
|
|
|
|
|
|
#=================================================
|
|
|
|
# END OF SCRIPT
|
|
|
|
#=================================================
|
|
|
|
|
|
|
|
ynh_script_progression --message="Restoration completed for $app" --last
|