|
@@ -2792,6 +2792,7 @@ function backup_to_friends_servers {
|
2792
|
2792
|
get_mariadb_gnusocial_admin_password
|
2793
|
2793
|
get_mariadb_redmatrix_admin_password
|
2794
|
2794
|
get_mariadb_owncloud_admin_password
|
|
2795
|
+ get_mariadb_git_admin_password
|
2795
|
2796
|
|
2796
|
2797
|
if ! grep -q "backups on friends servers" /home/$MY_USERNAME/README; then
|
2797
|
2798
|
echo '' >> /home/$MY_USERNAME/README
|
|
@@ -2996,6 +2997,53 @@ function backup_to_friends_servers {
|
2996
|
2997
|
echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
2997
|
2998
|
echo '' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
2998
|
2999
|
fi
|
|
3000
|
+
|
|
3001
|
+ if grep -Fxq "install_gogs" $COMPLETION_FILE; then
|
|
3002
|
+ BACKUP_INCLUDES_DATABASES="yes"
|
|
3003
|
+ echo 'if [ ! -d $SERVER_DIRECTORY/backup/gogs ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3004
|
+ echo ' mkdir -p $SERVER_DIRECTORY/backup/gogs' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3005
|
+ echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3006
|
+ echo 'if [ ! -d $SERVER_DIRECTORY/backup/gogsdata ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3007
|
+ echo ' mkdir -p $SERVER_DIRECTORY/backup/gogsdata' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3008
|
+ echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3009
|
+ echo "if [ ! -d /root/tempgogsdata ]; then" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3010
|
+ echo " mkdir -p /root/tempgogsdata" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3011
|
+ echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3012
|
+ echo 'mysqldump --password=$DATABASE_PASSWORD gogs > /root/tempgogsdata/gogs.sql' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3013
|
+ echo "if [ ! -s /root/tempgogsdata/gogs.sql ]; then" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3014
|
+ echo ' echo "Gogs database could not be saved"' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3015
|
+ echo ' if [ ! $DATABASE_PASSWORD ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3016
|
+ echo " echo 'No MariaDB password was given'" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3017
|
+ echo " fi" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3018
|
+ echo ' # Send a warning email' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3019
|
+ echo -n ' echo "Unable to export gogs database" | mail -s "Freedombone backup to friends" ' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3020
|
+ echo "$MY_EMAIL_ADDRESS" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3021
|
+ echo ' exit 6785' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3022
|
+ echo "fi" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3023
|
+ echo -n 'rsyncrypto -v -r /root/tempgogsdata $SERVER_DIRECTORY/backup/gogsdata $SERVER_DIRECTORY/backup/gogsdata.keys ' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3024
|
+ echo "$BACKUP_CERTIFICATE" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3025
|
+ echo 'if [ ! "$?" = "0" ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3026
|
+ echo ' shred -zu /root/tempgogsdata/*' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3027
|
+ echo ' rm -rf /root/tempgogsdata' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3028
|
+ echo ' # Send a warning email' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3029
|
+ echo -n ' echo "Unable to encrypt gogs database" | mail -s "Freedombone backup to friends" ' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3030
|
+ echo "$MY_EMAIL_ADDRESS" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3031
|
+ echo ' exit 3776' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3032
|
+ echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3033
|
+ echo 'shred -zu /root/tempgogsdata/*' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3034
|
+ echo 'rm -rf /root/tempgogsdata' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3035
|
+ echo 'echo "Obtaining Gogs data backup"' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3036
|
+ echo -n 'rsyncrypto -v -r /etc/gocode/src/github.com/gogits/gogs $SERVER_DIRECTORY/backup/gogs $SERVER_DIRECTORY/backup/gogs.keys ' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3037
|
+ echo "$BACKUP_CERTIFICATE" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3038
|
+ echo 'if [ ! "$?" = "0" ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3039
|
+ echo ' # Send a warning email' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3040
|
+ echo -n ' echo "Unable to encrypt gogs installation (/etc/gocode/src/github.com/gogits/gogs)" | mail -s "Freedombone backup to friends" ' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3041
|
+ echo "$MY_EMAIL_ADDRESS" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3042
|
+ echo ' exit 76547' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3043
|
+ echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3044
|
+ echo '' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
3045
|
+ fi
|
|
3046
|
+
|
2999
|
3047
|
if grep -Fxq "install_wiki" $COMPLETION_FILE; then
|
3000
|
3048
|
echo 'if [ ! -d $SERVER_DIRECTORY/backup/wiki ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
3001
|
3049
|
echo ' mkdir -p $SERVER_DIRECTORY/backup/wiki' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
@@ -3438,6 +3486,7 @@ function restore_from_friend {
|
3438
|
3486
|
get_mariadb_gnusocial_admin_password
|
3439
|
3487
|
get_mariadb_redmatrix_admin_password
|
3440
|
3488
|
get_mariadb_owncloud_admin_password
|
|
3489
|
+ get_mariadb_git_admin_password
|
3441
|
3490
|
|
3442
|
3491
|
if ! grep -q "restore from a friend's server" /home/$MY_USERNAME/README; then
|
3443
|
3492
|
echo '' >> /home/$MY_USERNAME/README
|
|
@@ -3845,6 +3894,41 @@ function restore_from_friend {
|
3845
|
3894
|
echo '' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
3846
|
3895
|
fi
|
3847
|
3896
|
|
|
3897
|
+ if grep -Fxq "install_gogs" $COMPLETION_FILE; then
|
|
3898
|
+ BACKUP_INCLUDES_WEBSITES="yes"
|
|
3899
|
+ echo 'if [ -d $SERVER_DIRECTORY/backup/gogs ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3900
|
+ echo ' echo "Restoring gogs database"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3901
|
+ echo ' if [ ! -d /root/tempgogsdata ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3902
|
+ echo ' mkdir /root/tempgogsdata' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3903
|
+ echo ' fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3904
|
+ echo -n ' rsyncrypto -v -d -r $SERVER_DIRECTORY/backup/gogsdata /root/tempgogsdata $SERVER_DIRECTORY/backup/gogsdata.keys ' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3905
|
+ echo "$BACKUP_CERTIFICATE" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3906
|
+ echo ' if [ ! -f /root/tempgogsdata/remoterestore/backup/gogsdata/tempgogsdata/gogs.sql ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3907
|
+ echo ' echo "Unable to restore Gogs database"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3908
|
+ echo ' rm -rf /root/tempgogsdata' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3909
|
+ echo ' exit 8548' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3910
|
+ echo ' fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3911
|
+ echo ' mysqlsuccess=$(mysql -u root --password=$DATABASE_PASSWORD gogs -o < /root/tempgogsdata/remoterestore/backup/gogsdata/tempgogsdata/gogs.sql)' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3912
|
+ echo ' if [ ! "$?" = "0" ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3913
|
+ echo ' echo "$mysqlsuccess"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3914
|
+ echo ' exit 3695' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3915
|
+ echo ' fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3916
|
+ echo ' echo "Restoring Gogs installation"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3917
|
+ echo ' if [ ! -d /root/tempgogs ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3918
|
+ echo ' mkdir /root/tempgogs' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3919
|
+ echo ' fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3920
|
+ echo -n ' rsyncrypto -v -d -r $SERVER_DIRECTORY/backup/gogs /root/tempgogs $SERVER_DIRECTORY/backup/gogs.keys ' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3921
|
+ echo "$BACKUP_CERTIFICATE" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3922
|
+ echo " cp -r /root/tempgogs/remoterestore/backup/gogs/gocode/src/github.com/gogits/gogs/* /etc/gocode/src/github.com/gogits/gogs/" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3923
|
+ echo ' if [ ! "$?" = "0" ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3924
|
+ echo ' exit 5885' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3925
|
+ echo ' fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3926
|
+ echo ' rm -rf /root/tempgogs' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3927
|
+ echo ' rm -rf /root/tempgogsdata' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3928
|
+ echo 'fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3929
|
+ echo '' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
3930
|
+ fi
|
|
3931
|
+
|
3848
|
3932
|
echo 'if [ -d $SERVER_DIRECTORY/backup/wiki ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
3849
|
3933
|
echo ' echo "Restoring Wiki installation"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
3850
|
3934
|
echo ' mkdir /root/tempwiki' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|