#!/bin/bash #================================================= # GENERIC START #================================================= # IMPORT GENERIC HELPERS #================================================= source _common.sh source /usr/share/yunohost/helpers #================================================= # LOAD SETTINGS #================================================= app=$YNH_APP_INSTANCE_NAME domain=$(ynh_app_setting_get $app domain) db_name=$(ynh_app_setting_get $app db_name) db_user=$db_name final_path=$(ynh_app_setting_get $app final_path) port=$(ynh_app_setting_get $app port) redis_db=$(ynh_app_setting_get $app redis_db) #================================================= # STANDARD REMOVE #================================================= # REMOVE SERVICE FROM ADMIN PANEL #================================================= # Remove a service from the admin panel, added by `yunohost service add` if yunohost service status | grep -q "$app-server" then echo "Remove $app-server service" yunohost service remove "$app-server" fi if yunohost service status | grep -q "$app-worker" then echo "Remove $app-worker service" yunohost service remove "$app-worker" fi if yunohost service status | grep -q "$app-beat" then echo "Remove $app-beat service" yunohost service remove "$app-beat" fi #================================================= # STOP AND REMOVE SERVICE #================================================= systemctl stop "$app".target # Remove the dedicated systemd config ynh_remove_systemd_config "$app-server" ynh_remove_systemd_config "$app-worker" ynh_remove_systemd_config "$app-beat" ynh_secure_remove "/etc/systemd/system/$app.target" #================================================= # REMOVE THE PostgreSQL DATABASE #================================================= # Remove a database if it exists, along with the associated user ynh_psql_remove_db "$db_name" "$app" #================================================= # REMOVE THE Redis DATABASE #================================================= # Remove a database if it exists, along with the associated user ynh_redis_remove_db "$redis_db" #================================================= # REMOVE DEPENDENCIES #================================================= # Remove metapackage and its dependencies ynh_remove_app_dependencies #================================================= # REMOVE APP MAIN DIR #================================================= # Remove the app directory securely ynh_secure_remove "$final_path" ynh_secure_remove "/var/log/$app" #================================================= # REMOVE NGINX CONFIGURATION #================================================= # remove domain specific configuration tail -n +9 "/etc/nginx/conf.d/$domain.conf" > "/etc/nginx/conf.d/$domain.conf.temp" mv "/etc/nginx/conf.d/$domain.conf.temp" "/etc/nginx/conf.d/$domain.conf" # Remove the dedicated nginx config ynh_remove_nginx_config # remove local nginx cache ynh_secure_remove "/tmp/$app-transcode" #================================================= # CLOSE A PORT #================================================= if yunohost firewall list | grep -q "\- $port$" then echo "Close port $port" yunohost firewall disallow TCP $port 2>&1 fi #================================================= # GENERIC FINALIZATION #================================================= # REMOVE FAIL2BAN CONFIGURATION #================================================= ynh_remove_fail2ban_config #================================================= # REMOVE DEDICATED USER #================================================= # Delete a system user ynh_system_user_delete "$app"