use python-swiftclient to set backup expiry time

This eliminates the need for a scheduled job deleting the older backups.
This commit is contained in:
Daniel Micay 2024-05-24 12:43:16 -04:00
parent ff13a0a335
commit dd7d016204
3 changed files with 5 additions and 3 deletions

2
.gitignore vendored
View File

@ -1,7 +1,7 @@
/backup-key.txt
/backup-public-key.txt
/backup/
/cloud-archive-password.txt
/cloud-archive.sh
/lock
/nginx-tmp/
/static-production/

View File

@ -50,5 +50,5 @@ rsync -pcv --chmod=644 --fsync --preallocate systemd/system/remote-backup.timer
rsync -pcv --chmod=644 --fsync --preallocate systemd/system/remote-backup.service $remote:/etc/systemd/system/remote-backup.service
rsync -pcv --chmod=644 --fsync --preallocate systemd/system/mjolnir.service $remote:/etc/systemd/system/mjolnir.service
rsync -rpcv --chmod=D755,F644 --delete --fsync --preallocate systemd/system/matterbridge.service.d $remote:/etc/systemd/system/
rsync -pcv --chmod=644 --fsync --preallocate backup-public-key.txt cloud-archive-password.txt $remote:
rsync -pcv --chmod=644 --fsync --preallocate backup-public-key.txt cloud-archive.sh $remote:
rsync -pcv --chmod=600 --chown postgres:postgres --fsync --preallocate postgres/data/{pg_hba,pg_ident,postgresql}.conf $remote:/var/lib/postgres/data/

View File

@ -12,6 +12,8 @@ cp -r /etc/matterbridge.toml remote-backup/$timestamp/matterbridge.toml
cp -r /etc/synapse remote-backup/$timestamp/synapse
cp -r /var/lib/mjolnir remote-backup/$timestamp/mjolnir
tar -cC remote-backup $timestamp | zstd -9 | age -r $(cat backup-public-key.txt) -o remote-backup/$timestamp.tar.zst.age
sshpass -f cloud-archive-password.txt rsync -v ./remote-backup/$timestamp.tar.zst.age pca@gateways.storage.gra.cloud.ovh.net:backup/
source cloud-archive.sh
swift upload --segment-size 5368709122 -H "X-Delete-After: 5184000" --object-name $timestamp.tar.zst.age backup remote-backup/$timestamp.tar.zst.age
rm -rf remote-backup