]> git.mxchange.org Git - quix0rs-gnu-social.git/blob - scripts/delete_status_network.sh
Misses this file to merge. I like the comments.
[quix0rs-gnu-social.git] / scripts / delete_status_network.sh
1 #!/bin/bash
2
3 # live fast! die young!
4
5 set -e
6
7 source /etc/statusnet/setup.cfg || (echo "Failed to read /etc/statusnet/setup.cfg"; exit -1)
8
9 export nickname=$1
10 if [ "x" == "x$nickname" ]
11 then
12     echo "Usage: delete_status_network.sh <site-nickname>"
13     exit 1
14 fi
15
16 export database=$nickname$DBBASE
17
18 # Pull the status_network record so we know which DB server to drop from...
19 TARGET_DBHOST=`mysql -h $DBHOST -u $ADMIN --password=$ADMINPASS $SITEDB --batch --skip-column-names -e \
20   "select dbhost from status_network where nickname='$nickname'"`
21
22 if [ "x" == "x$TARGET_DBHOST" ]
23 then
24     echo "Aborting: Could not find status_network record for site $nickname"
25     exit 1
26 fi
27
28 # Drop the database
29 echo "Dropping $database from $TARGET_DBHOST..."
30 mysqladmin -h $TARGET_DBHOST -u $ADMIN --password=$ADMINPASS -f drop $database || exit 1
31
32 # Remove the status_network entry
33 echo "Removing status_network entry for $nickname..."
34 mysql -h $DBHOST -u $ADMIN --password=$ADMINPASS $SITEDB -e \
35     "delete from status_network where nickname = '$nickname'" || exit 1
36
37 # Remove uploaded file areas
38 for top in $AVATARBASE $FILEBASE $BACKGROUNDBASE; do
39     if [ "x" == "x$top" ]
40     then
41         echo "Skipping deletion due to broken config"
42     else
43         echo "Deleting $top/$nickname"
44         rm -Rf "$top/$nickname"
45     fi
46 done
47
48 echo "Done."