use real tar

This commit is contained in:
2019-10-10 17:27:08 +02:00
parent 8c7a3a7525
commit 7b87281dcd
2 changed files with 18 additions and 7 deletions

View File

@@ -1,9 +1,10 @@
FROM alpine:3.4 FROM alpine:3.10
MAINTAINER technik@myfoodmap.de MAINTAINER matthias@bilger.info
RUN apk add --update \ RUN apk add --update \
py-pip \ py-pip \
gpgme \ gpgme \
tar \
sed \ sed \
xz \ xz \
&& rm -rf /var/cache/apk/* && rm -rf /var/cache/apk/*

View File

@@ -1,19 +1,29 @@
#!/bin/sh #!/bin/sh
BACKUP_DATE=$(date +"%Y-%m-%d_%H-%M") BACKUP_DATE=$(date +"%Y-%m-%d_%H-%M")
BACKUP_BASENAME=$S3_BUCKET_NAME$BACKUP_DATE.tar
SKIP_XZ=${ONLY_TAR:0}
if [ $SKIP_XZ -ne 0 ]; then
TAR_PARAM=
BACKUP_FILENAME=$BACKUP_BASENAME
else
TAR_PARAM=-J
BACKUP_FILENAME=$BACKUP_BASENAME.xz
fi
cd /backup cd /backup
echo "make archive" echo "make archive"
tar -c --checkpoint=.1000 -Jf ~/$S3_BUCKET_NAME$BACKUP_DATE.tar.xz ./* tar -c --checkpoint=.1000 ${TAR_PARAM} -f ~/$BACKUP_FILENAME ./*
cd / cd /
RECIPIENT=$(echo "$GPG_RECIPIENT" | sed "s/,/ --recipient /") RECIPIENT=$(echo "$GPG_RECIPIENT" | sed "s/,/ --recipient /")
echo "encrypting" echo "encrypting"
gpg --trust-model always --enable-progress-filter --output ~/$S3_BUCKET_NAME$BACKUP_DATE.tar.xz.gpg --encrypt --recipient $RECIPIENT ~/$S3_BUCKET_NAME$BACKUP_DATE.tar.xz gpg --trust-model always --enable-progress-filter --output ~/$BACKUP_FILENAME.gpg --encrypt --recipient $RECIPIENT ~/$BACKUP_FILENAME
rm ~/$S3_BUCKET_NAME$BACKUP_DATE.tar.xz rm ~/$BACKUP_FILENAME
echo "uploading" echo "uploading"
aws s3 cp ~/$S3_BUCKET_NAME$BACKUP_DATE.tar.xz.gpg s3://$S3_BUCKET_NAME/$S3_BUCKET_NAME$BACKUP_DATE.tar.xz.gpg --storage-class STANDARD_IA aws s3 cp ~/$BACKUP_FILENAME.gpg s3://$S3_BUCKET_NAME/$BACKUP_FILENAME.gpg --storage-class STANDARD_IA
rm ~/$S3_BUCKET_NAME$BACKUP_DATE.tar.xz.gpg rm ~/$BACKUP_FILENAME.gpg
echo "done" echo "done"