„backup.sh“ ändern
All checks were successful
continuous-integration/drone/push Build is passing

details to healthcheck.
This commit is contained in:
2019-11-28 08:06:41 +00:00
parent bc69b6f873
commit 631cb048ac

View File

@@ -18,44 +18,44 @@ fi
healthchck_fail(){
if [ -n $HEALTHCHECK_URL ]; then
curl --retry 3 $HEALTHCHECK_URL/fail --silent --output /dev/null
curl -X POST --data $1 --retry 3 $HEALTHCHECK_URL/fail --silent --output /dev/null
exit 1
fi
}
healthchck_start(){
if [ -n $HEALTHCHECK_URL ]; then
curl --retry 3 $HEALTHCHECK_URL/start --silent --output /dev/null
curl -X POST --data $1 --retry 3 $HEALTHCHECK_URL/start --silent --output /dev/null
fi
}
healthchck_ok(){
if [ -n $HEALTHCHECK_URL ]; then
curl --retry 3 $HEALTHCHECK_URL --silent --output /dev/null
curl -X POST --data $1 --retry 3 $HEALTHCHECK_URL --silent --output /dev/null
fi
}
healthchck_start
cd /backup
echo "make archive"
tar -c --checkpoint=.1000 ${TAR_PARAM} ${TAR_EXTRA_PARAM} -f ~/$BACKUP_FILENAME ./* || healthchck_fail
tar -c --checkpoint=.1000 ${TAR_PARAM} ${TAR_EXTRA_PARAM} -f ~/$BACKUP_FILENAME ./* || healthchck_fail "TAR Failed"
cd /
echo " done"
RECIPIENT=$(echo "$GPG_RECIPIENT" | sed "s/,/ --recipient /")
echo "encrypting"
gpg --trust-model always --enable-progress-filter --output ~/$BACKUP_FILENAME.gpg --encrypt --recipient $RECIPIENT ~/$BACKUP_FILENAME || healthchck_fail
gpg --trust-model always --enable-progress-filter --output ~/$BACKUP_FILENAME.gpg --encrypt --recipient $RECIPIENT ~/$BACKUP_FILENAME || healthchck_fail "Encryption Failed"
rm ~/$BACKUP_FILENAME
echo "uploading"
aws s3 cp ~/$BACKUP_FILENAME.gpg s3://$S3_BUCKET_NAME/$BACKUP_FILENAME.gpg --storage-class STANDARD_IA || healthchck_fail
aws s3 cp ~/$BACKUP_FILENAME.gpg s3://$S3_BUCKET_NAME/$BACKUP_FILENAME.gpg --storage-class STANDARD_IA || healthchck_fail "Upload Failed"
rm ~/$BACKUP_FILENAME.gpg
echo "done"
# On first month day do
if [ "$month_day" -eq 1 ] ; then
echo "make monthly backup"
aws s3 cp s3://$S3_BUCKET_NAME/$BACKUP_FILENAME.gpg s3://$S3_BUCKET_NAME/$BACKUP_FILENAME_MONTHLY.gpg --storage-class DEEP_ARCHIVE || healthchck_fail
aws s3 cp s3://$S3_BUCKET_NAME/$BACKUP_FILENAME.gpg s3://$S3_BUCKET_NAME/$BACKUP_FILENAME_MONTHLY.gpg --storage-class DEEP_ARCHIVE || healthchck_fail "failed to create monthly backup"
fi
healthchck_ok
healthchck_ok "Success"