summaryrefslogtreecommitdiff
path: root/backupz/gitbackup
blob: 88e5db2b7e49c48419552a194f63b827a7349240 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/bin/sh
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")
	mkdir -p /tmp/backupz-gitbackup/"$DNAME"
	for REPO in "$DIR"/*.git ; do
		RNAME=$(basename "$REPO")
		echo "backing up $DNAME repo $RNAME"
		git clone --mirror $REPO "$TEMPDIR"/"$DNAME"/"$RNAME"
	done
done

echo "syncing to remote"
rsync -az --delete $TEMPDIR/* $REMOTEDIR/
echo "cleaning up"
rm -rf $TEMPDIR