diff options
| author | Luke Hoersten <[email protected]> | 2020-07-01 12:16:48 -0500 |
|---|---|---|
| committer | Luke Hoersten <[email protected]> | 2020-07-01 12:16:48 -0500 |
| commit | d5a690b1e03a998510d48d2f39d1a224c64d82ff (patch) | |
| tree | 8c0f8cab0b66b2dbced1945799bb11b8cf5901af /pleroma/aws-s3-backup/files | |
| parent | 3d9e1d8d39686d3ccffb90ff52bcda399e68bc7c (diff) | |
Split out aws s3 and otp roles.
Diffstat (limited to 'pleroma/aws-s3-backup/files')
| -rw-r--r-- | pleroma/aws-s3-backup/files/pleroma-s3-backup.sh | 26 | ||||
| -rw-r--r-- | pleroma/aws-s3-backup/files/[email protected] | 9 |
2 files changed, 35 insertions, 0 deletions
diff --git a/pleroma/aws-s3-backup/files/pleroma-s3-backup.sh b/pleroma/aws-s3-backup/files/pleroma-s3-backup.sh new file mode 100644 index 0000000..7c1d6d3 --- /dev/null +++ b/pleroma/aws-s3-backup/files/pleroma-s3-backup.sh @@ -0,0 +1,26 @@ +#!/bin/bash + +INSTANCE=$1 +DATE=`date --iso-8601` + +BUCKET="pleroma-${INSTANCE//_/-}-backup" +BACKUP_DIR="/tmp/s3-backup/$BUCKET" +BACKUP_TAR="/tmp/s3-backup/$BUCKET-$DATE.tgz" + +DB_NAME="pleroma_$INSTANCE" +CONFIG="/etc/pleroma/$INSTANCE.config.exs" + +UPLOADS_DIR=`grep uploads $CONFIG | cut -d '"' -f 2` +STATIC_DIR=`grep static $CONFIG | cut -d '"' -f 2` + +mkdir -m 775 -p "$BACKUP_DIR/" +chown root:postgres "$BACKUP_DIR/" + +su postgres -c "pg_dump -d $DB_NAME --format=custom -f $BACKUP_DIR/$DB_NAME.pgdump" +cp $CONFIG "$BACKUP_DIR/" +cp -r $UPLOADS_DIR "$BACKUP_DIR/" +cp -r $STATIC_DIR "$BACKUP_DIR/" + +tar -zc -f $BACKUP_TAR $BACKUP_DIR +aws s3 mb "s3://$BUCKET/" +aws s3 cp $BACKUP_TAR "s3://$BUCKET/" diff --git a/pleroma/aws-s3-backup/files/[email protected] b/pleroma/aws-s3-backup/files/[email protected] new file mode 100644 index 0000000..a64cae3 --- /dev/null +++ b/pleroma/aws-s3-backup/files/[email protected] @@ -0,0 +1,9 @@ +[Unit] +Description=Pleroma s3 backup for instance "%I" + +[Service] +Type=oneshot +ExecStart=/usr/local/bin/pleroma-s3-backup.sh %i + +[Install] +WantedBy=aws-s3-backup.target |
