summaryrefslogtreecommitdiff
path: root/backupz/gitbackup
diff options
context:
space:
mode:
Diffstat (limited to 'backupz/gitbackup')
-rwxr-xr-xbackupz/gitbackup22
1 files changed, 10 insertions, 12 deletions
diff --git a/backupz/gitbackup b/backupz/gitbackup
index 7ddce88..88e5db2 100755
--- a/backupz/gitbackup
+++ b/backupz/gitbackup
@@ -1,20 +1,18 @@
#!/bin/sh
-CDIR=/tmp/backupz-gitbackup.commands
-REMOTE=covalent.aberrantflux.xyz
-rm $CDIR
+REMOTEDIR=root@covalent.aberrantflux.xyz:/mnt/blockstorage/backup/git/
+TEMPDIR=/tmp/backupz-gitbackup/
+echo "cloning repos"
for DIR in /srv/git/public /srv/git/private ; do
DNAME=$(basename "$DIR")
- echo "mkdir -p /srv/backup/git/new/$DNAME /srv/backup/git/old/$DNAME" >> $CDIR
+ mkdir -p /tmp/backupz-gitbackup/"$DNAME"
for REPO in "$DIR"/*.git ; do
RNAME=$(basename "$REPO")
echo "backing up $DNAME repo $RNAME"
- SRC=root@canonical.aberrantflux.xyz:$REPO
- TDEST=/srv/backup/git/new/$DNAME/$RNAME
- FDEST=/srv/backup/git/old/$DNAME/$RNAME
- echo "rm -rf $FDEST ; mv $TDEST $FDEST ; git clone --mirror $SRC $TDEST" >> $CDIR
+ git clone --mirror $REPO "$TEMPDIR"/"$DNAME"/"$RNAME"
done
done
-echo "wrote commands"
-cat $CDIR | ssh $REMOTE
-rm $CDIR
-echo "sent commands & finished clean-up"
+
+echo "syncing to remote"
+rsync -az --delete $TEMPDIR/* $REMOTEDIR/
+echo "cleaning up"
+rm -rf $TEMPDIR