Some checks failed
AI Code Review / ai-review (pull_request) Failing after 2s
21 lines
656 B
Bash
21 lines
656 B
Bash
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
# S3-compatible backup upload (UpCloud Objects, MinIO, Wasabi, etc.)
|
|
# Uses: minio/mc
|
|
# Env: S3_ENDPOINT, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, S3_BUCKET
|
|
|
|
BACKUP_FILE="${1:?Usage: $0 <backup-file>}"
|
|
TIMESTAMP=$(date +%Y%m%d-%H%M%S)
|
|
KEY="gitea-dump-${TIMESTAMP}.zip"
|
|
|
|
mc alias set s3 "${S3_ENDPOINT}" "${AWS_ACCESS_KEY_ID}" "${AWS_SECRET_ACCESS_KEY}"
|
|
|
|
echo "Uploading ${KEY}..."
|
|
mc cp "$BACKUP_FILE" "s3/${S3_BUCKET}/${KEY}"
|
|
echo "Upload complete."
|
|
|
|
# Prune backups older than 7 days
|
|
echo "Pruning backups older than 7 days..."
|
|
mc rm --older-than 7d --force "s3/${S3_BUCKET}/" 2>&1 || true
|
|
echo "Pruning complete."
|