mirror of
https://github.com/YunoHost-Apps/funkwhale_ynh.git
synced 2024-09-03 18:36:24 +02:00
e20af67e94
Fix #84
140 lines
4.5 KiB
Bash
140 lines
4.5 KiB
Bash
#!/bin/bash
|
|
|
|
#=================================================
|
|
# GENERIC START
|
|
#=================================================
|
|
# IMPORT GENERIC HELPERS
|
|
#=================================================
|
|
|
|
source _common.sh
|
|
source /usr/share/yunohost/helpers
|
|
|
|
#=================================================
|
|
# LOAD SETTINGS
|
|
#=================================================
|
|
ynh_print_info --message="Loading installation settings..."
|
|
|
|
app=$YNH_APP_INSTANCE_NAME
|
|
|
|
domain=$(ynh_app_setting_get --app="$app" --key=domain)
|
|
port=$(ynh_app_setting_get --app="$app" --key=port)
|
|
db_name=$(ynh_app_setting_get --app="$app" --key=db_name)
|
|
db_user="$db_name"
|
|
final_path=$(ynh_app_setting_get --app="$app" --key=final_path)
|
|
redis_db=$(ynh_app_setting_get --app="$app" --key=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 "$app-server" >/dev/null 2>&1
|
|
then
|
|
ynh_print_info --message="Remove $app-server service"
|
|
yunohost service remove "$app-server"
|
|
fi
|
|
|
|
if yunohost service status "$app-worker" >/dev/null 2>&1
|
|
then
|
|
ynh_print_info --message="Remove $app-worker service"
|
|
yunohost service remove "$app-worker"
|
|
fi
|
|
|
|
if yunohost service status "$app-beat" >/dev/null 2>&1
|
|
then
|
|
ynh_print_info --message="Remove $app-beat service"
|
|
yunohost service remove "$app-beat"
|
|
fi
|
|
|
|
#=================================================
|
|
# STOP AND REMOVE SERVICE
|
|
#=================================================
|
|
ynh_print_info --message="Stopping and removing the systemd service"
|
|
|
|
ynh_systemd_action --action="stop" --service_name="${app}-beat"
|
|
ynh_systemd_action --action="stop" --service_name="${app}-server"
|
|
ynh_systemd_action --action="stop" --service_name="${app}-worker"
|
|
|
|
# Remove the dedicated systemd config
|
|
ynh_remove_systemd_config --service="$app-server"
|
|
ynh_remove_systemd_config --service="$app-worker"
|
|
ynh_remove_systemd_config --service="$app-beat"
|
|
|
|
ynh_secure_remove --file="/etc/systemd/system/$app.target"
|
|
|
|
#=================================================
|
|
# REMOVE THE POSTGRESQL DATABASE
|
|
#=================================================
|
|
ynh_print_info --message="Removing the PostgreSQL database"
|
|
|
|
# Remove a database if it exists, along with the associated user
|
|
ynh_psql_remove_db --db_name="$db_name" --db_user="$db_user"
|
|
|
|
#=================================================
|
|
# REMOVE THE REDIS DATABASE
|
|
#=================================================
|
|
ynh_print_info --message="Removing the Redis database"
|
|
|
|
# Remove a database if it exists, along with the associated user
|
|
ynh_redis_remove_db "$redis_db"
|
|
|
|
#=================================================
|
|
# REMOVE DEPENDENCIES
|
|
#=================================================
|
|
ynh_print_info --message="Removing dependencies"
|
|
|
|
# Remove metapackage and its dependencies
|
|
ynh_remove_app_dependencies
|
|
|
|
#=================================================
|
|
# REMOVE APP MAIN DIR
|
|
#=================================================
|
|
ynh_print_info --message="Removing app main directory"
|
|
|
|
# Remove the app directory securely
|
|
ynh_secure_remove --file="$final_path"
|
|
|
|
ynh_secure_remove --file="/var/log/$app"
|
|
|
|
#=================================================
|
|
# REMOVE NGINX CONFIGURATION
|
|
#=================================================
|
|
ynh_print_info --message="Removing nginx web server configuration"
|
|
|
|
# Remove the dedicated nginx config
|
|
ynh_remove_nginx_config
|
|
|
|
#=================================================
|
|
# CLOSE A PORT
|
|
#=================================================
|
|
|
|
if yunohost firewall list | grep -q "\- $port$"
|
|
then
|
|
ynh_print_info --message="Closing port $port"
|
|
ynh_exec_warn_less yunohost firewall disallow TCP $port
|
|
fi
|
|
|
|
#=================================================
|
|
# REMOVE FAIL2BAN CONFIGURATION
|
|
#=================================================
|
|
ynh_print_info --message="Removing fail2ban configuration..."
|
|
|
|
ynh_remove_fail2ban_config
|
|
|
|
#=================================================
|
|
# GENERIC FINALIZATION
|
|
#=================================================
|
|
# REMOVE DEDICATED USER
|
|
#=================================================
|
|
ynh_print_info --message="Removing the dedicated system user"
|
|
|
|
# Delete a system user
|
|
ynh_system_user_delete --username="$app"
|
|
|
|
#=================================================
|
|
# END OF SCRIPT
|
|
#=================================================
|
|
|
|
ynh_print_info --message="Removal of $app completed"
|