diff options
| author | Luke Hoersten <[email protected]> | 2021-07-03 13:24:52 -0500 |
|---|---|---|
| committer | Luke Hoersten <[email protected]> | 2021-07-03 13:24:52 -0500 |
| commit | 7bbf035ca8649983ef1d415f9322828d8e5a09b2 (patch) | |
| tree | 1c242cd12affb17d4182dd07e27f2bbeba303f9e /pleroma/aws-s3-backup | |
| parent | e4482f91ed5ddbaa350c59858e082235720abacc (diff) | |
Add aws s3 versioning and lifecycles to backup.
Diffstat (limited to 'pleroma/aws-s3-backup')
| -rw-r--r-- | pleroma/aws-s3-backup/files/pleroma-s3-backup-lifecycle.json | 12 | ||||
| -rw-r--r-- | pleroma/aws-s3-backup/files/pleroma-s3-backup.sh | 5 | ||||
| -rw-r--r-- | pleroma/aws-s3-backup/tasks/main.yaml | 7 |
3 files changed, 22 insertions, 2 deletions
diff --git a/pleroma/aws-s3-backup/files/pleroma-s3-backup-lifecycle.json b/pleroma/aws-s3-backup/files/pleroma-s3-backup-lifecycle.json new file mode 100644 index 0000000..fa75f06 --- /dev/null +++ b/pleroma/aws-s3-backup/files/pleroma-s3-backup-lifecycle.json @@ -0,0 +1,12 @@ +{ + "Rules": [ + { + "ID": "pleroma-expiration", + "Filter": {}, + "Status": "Enabled", + "NoncurrentVersionExpiration": { + "NoncurrentDays": 30 + } + } + ] +} diff --git a/pleroma/aws-s3-backup/files/pleroma-s3-backup.sh b/pleroma/aws-s3-backup/files/pleroma-s3-backup.sh index 22ba271..273b814 100644 --- a/pleroma/aws-s3-backup/files/pleroma-s3-backup.sh +++ b/pleroma/aws-s3-backup/files/pleroma-s3-backup.sh @@ -1,11 +1,10 @@ #!/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" +BACKUP_TAR="/tmp/s3-backup/$BUCKET.tgz" DB_NAME="pleroma_$INSTANCE" CONFIG="/etc/pleroma/$INSTANCE.config.exs" @@ -23,6 +22,8 @@ cp -r $STATIC_DIR "$BACKUP_DIR/" tar -zc -f $BACKUP_TAR $BACKUP_DIR aws s3 mb "s3://$BUCKET/" +aws s3api put-bucket-versioning --bucket "$BUCKET" --versioning-configuration Status=Enabled +aws s3api put-bucket-lifecycle-configuration --bucket "$BUCKET" --lifecycle-configuration "file:///usr/local/share/pleroma-s3-backup-lifecycle.json" aws s3 cp $BACKUP_TAR "s3://$BUCKET/" rm $BACKUP_TAR diff --git a/pleroma/aws-s3-backup/tasks/main.yaml b/pleroma/aws-s3-backup/tasks/main.yaml index 12eaded..543845d 100644 --- a/pleroma/aws-s3-backup/tasks/main.yaml +++ b/pleroma/aws-s3-backup/tasks/main.yaml @@ -7,6 +7,13 @@ dest: "/usr/local/bin/pleroma-s3-backup.sh" mode: "0755" +- name: create s3 backup lifesycle json file + become: yes + copy: + src: "pleroma-s3-backup-lifecycle.json" + dest: "/usr/local/share/pleroma-s3-backup-lifecycle.json" + mode: "0755" + - name: configure s3 backup systemd service become: yes copy: |
