103 lines
3.5 KiB
Bash
103 lines
3.5 KiB
Bash
#!/bin/bash
|
|
|
|
#=================================================
|
|
# GENERIC START
|
|
#=================================================
|
|
# IMPORT GENERIC HELPERS
|
|
#=================================================
|
|
|
|
source _common.sh
|
|
source /usr/share/yunohost/helpers
|
|
|
|
#=================================================
|
|
# STANDARD REMOVE
|
|
#=================================================
|
|
# REMOVE SERVICE INTEGRATION IN YUNOHOST
|
|
#=================================================
|
|
|
|
# Remove the service from the list of services known by YunoHost (added from `yunohost service add`)
|
|
if ynh_exec_warn_less yunohost service status $app >/dev/null
|
|
then
|
|
ynh_script_progression --message="Removing $app service integration..." --weight=1
|
|
yunohost service remove $app
|
|
fi
|
|
|
|
#=================================================
|
|
# STOP AND REMOVE SERVICE
|
|
#=================================================
|
|
ynh_script_progression --message="Stopping and removing the systemd service..." --weight=1
|
|
|
|
# Remove the dedicated systemd config
|
|
ynh_remove_systemd_config
|
|
|
|
#=================================================
|
|
# REMOVE LOGROTATE CONFIGURATION
|
|
#=================================================
|
|
ynh_script_progression --message="Removing logrotate configuration..." --weight=1
|
|
|
|
# Remove the app-specific logrotate config
|
|
ynh_remove_logrotate
|
|
|
|
#=================================================
|
|
# REMOVE THE DATABASE
|
|
#=================================================
|
|
ynh_script_progression --message="Removing the database..." --weight=2
|
|
|
|
# Remove a database if it exists, along with the associated user
|
|
ynh_psql_remove_db --db_user=$db_user --db_name=$db_name
|
|
|
|
#=================================================
|
|
# REMOVE DEPENDENCIES
|
|
#=================================================
|
|
ynh_script_progression --message="Removing dependencies..." --weight=1
|
|
|
|
# Remove metapackage and its dependencies
|
|
ynh_remove_app_dependencies
|
|
|
|
#=================================================
|
|
# REMOVE APP MAIN DIR
|
|
#=================================================
|
|
ynh_script_progression --message="Removing app main directory..." --weight=3
|
|
|
|
# Remove the app directory securely
|
|
ynh_secure_remove --file="$install_dir"
|
|
|
|
#=================================================
|
|
# REMOVE DATA DIR
|
|
#=================================================
|
|
|
|
# Remove the app data directory with the command `yunohost app remove forgejo --purge`
|
|
if [ "${YNH_APP_PURGE:-0}" -eq 1 ]
|
|
then
|
|
ynh_script_progression --message="Removing app data directory..." --weight=2
|
|
ynh_secure_remove --file="$data_dir"
|
|
fi
|
|
|
|
#=================================================
|
|
# REMOVE NGINX CONFIGURATION
|
|
#=================================================
|
|
ynh_script_progression --message="Removing NGINX web server configuration..." --weight=1
|
|
|
|
# Remove the dedicated NGINX config
|
|
ynh_remove_nginx_config
|
|
|
|
#=================================================
|
|
# REMOVE FAIL2BAN CONFIGURATION
|
|
#=================================================
|
|
ynh_script_progression --message="Removing Fail2Ban configuration..." --weight=1
|
|
|
|
# Remove the dedicated Fail2Ban config
|
|
ynh_remove_fail2ban_config
|
|
|
|
#=================================================
|
|
# REMOVE VARIOUS FILES
|
|
#=================================================
|
|
ynh_script_progression --message="Removing various files..." --weight=1
|
|
|
|
ynh_secure_remove --file="/var/log/$app"
|
|
|
|
#=================================================
|
|
# END OF SCRIPT
|
|
#=================================================
|
|
|
|
ynh_script_progression --message="Removal of $app completed" --last
|