From 08fae37716d1f838f7561dc68a378ab99a70e189 Mon Sep 17 00:00:00 2001 From: root Date: Tue, 19 Dec 2023 16:12:30 +0000 Subject: [PATCH] Added uninstall and fixed freescout to have uninstall --- bin/uninstallapp | 27 +++++++++++++++++++++++++++ lib/freescout.sh | 18 ++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100755 bin/uninstallapp diff --git a/bin/uninstallapp b/bin/uninstallapp new file mode 100755 index 0000000..b82d4be --- /dev/null +++ b/bin/uninstallapp @@ -0,0 +1,27 @@ +#!/bin/bash +# +# Uninstalls app +# This will completely remove database and files +. /etc/federated +. /federated/lib/functions.sh +trap cleanup `seq 1 15` + +usage() { +cat << EOF +UnInstall application +Usage: $0 appname +Arguments: + appname Application to remove. bookstack,espocrm,freescout,etc + This will completely remove database and files + +EOF +exit 2; +} + +[ $# != 1 ] && usage +APP=$1 + +[ ! -f /federated/lib/$APP.sh ] && failcheck "/federated/lib/$APP.sh doesn't exist." +[ ! -d /federated/apps/$APP ] && failcheck "/federated/apps/$APP doesn't exists. $APP is already uninstalled?" +. /federated/lib/$APP.sh +uninstall_$APP diff --git a/lib/freescout.sh b/lib/freescout.sh index e385665..aa8384a 100644 --- a/lib/freescout.sh +++ b/lib/freescout.sh @@ -168,3 +168,21 @@ EOF kill -9 $SPINPID &> /dev/null echo -ne "done.\n" } +uninstall_freescout() { + echo -ne "* Uninstalling freescout container.." + spin & + SPINPID=$! + + # First stop the service + cd /federated/apps/freescout && docker-compose -f docker-compose.yml -p freescout down &> /dev/null + + # Delete database and user in postgresql + docker exec postgresql psql -U postgres -c "DROP DATABASE freescout" &> /dev/null + docker exec postgresql psql -U postgres -c "DROP USER freescout" &> /dev/null + + # Delete the app directory + rm -rf /federated/apps/freescout + + kill -9 $SPINPID &> /dev/null + echo -ne "done.\n" +}