#!/bin/bash # 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 db_name=$(ynh_app_setting_get --key=db_name) #================================================= # STANDARD RESTORATION STEPS #================================================= # RESTORE LOGROTATE #================================================= ynh_script_progression "Configuring logrotate to manage application logfiles" # Use logrotate to manage application logfile(s) ynh_config_add_logrotate #================================================= # RESTORE THE NGINX CONFIGURATION #================================================= ynh_script_progression "Restoring the NGINX web server configuration..." ynh_restore "/etc/nginx/conf.d/$domain.d/$app.conf" #================================================= # RESTORE THE POSTGRESQL DATABASE #================================================= ynh_script_progression "Restoring the PostgreSQL database..." ynh_psql_db_shell < "./db.sql" #================================================= # RESTORE THE APP MAIN DIR #================================================= ynh_script_progression "Restoring the app main directory..." ynh_restore "$install_dir" #REMOVEME? Assuming the file is setup using ynh_config_add, the proper chmod/chowns are now already applied and it shouldn't be necessary to tweak perms | chmod 400 $install_dir/.env #REMOVEME? Assuming the install dir is setup using ynh_setup_source, the proper chmod/chowns are now already applied and it shouldn't be necessary to tweak perms | chown -R $app: "$install_dir" #================================================= # RESTORE SYSTEMD #================================================= ynh_script_progression "Restoring $app's systemd service..." ynh_restore "/etc/systemd/system/${app}.service" ynh_restore "/etc/systemd/system/${app}_workers.service" systemctl enable "${app}.service" --quiet systemctl enable "${app}_workers.service" --quiet #================================================= # INTEGRATE SERVICE IN YUNOHOST #================================================= ynh_script_progression "Integrating service in YunoHost..." yunohost service add "${app}" --description="Fittrackee main service" --log="/var/log/$app/$app.log" yunohost service add "${app}_workers" --description="Fittrackee task queue service" --log="var/log/$app/${app}_workers.log" #================================================= # START SYSTEMD SERVICE #================================================= ynh_script_progression "Starting $app's systemd service..." ynh_systemctl --service="${app}" --action="start" ynh_systemctl --service="${app}_workers" --action="start" #================================================= # RELOAD NGINX #================================================= ynh_script_progression "Reloading NGINX web server..." ynh_systemctl --service=nginx --action=reload #================================================= # END OF SCRIPT #================================================= ynh_script_progression "Restoration completed for $app"