diff options
| author | Kai Stevenson <kai@kaistevenson.com> | 2023-03-13 02:34:44 -0700 |
|---|---|---|
| committer | Kai Stevenson <kai@kaistevenson.com> | 2023-03-13 02:34:44 -0700 |
| commit | aca46379f7bbe5d7aa084175b3ad7efe7665c7c3 (patch) | |
| tree | 23a3e40cd8ab8366b00938cf693d9998805ea0a1 /shs/backupz/gitbackup | |
| parent | 25cdfd138ae633570d6416b6faaccae62040b3fa (diff) | |
git backup script
Diffstat (limited to 'shs/backupz/gitbackup')
| -rwxr-xr-x | shs/backupz/gitbackup | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/shs/backupz/gitbackup b/shs/backupz/gitbackup new file mode 100755 index 0000000..7ddce88 --- /dev/null +++ b/shs/backupz/gitbackup @@ -0,0 +1,20 @@ +#!/bin/sh +CDIR=/tmp/backupz-gitbackup.commands +REMOTE=covalent.aberrantflux.xyz +rm $CDIR +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 + 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 + done +done +echo "wrote commands" +cat $CDIR | ssh $REMOTE +rm $CDIR +echo "sent commands & finished clean-up" |
