forked from robbydooo/docker-backup-to-s3
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathstart.sh
20 lines (17 loc) · 772 Bytes
/
start.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/bash
ACCESS_KEY=${ACCESS_KEY:?"ACCESS_KEY env variable is required"}
SECRET_KEY=${SECRET_KEY:?"SECRET_KEY env variable is required"}
S3_PATH=${S3_PATH:?"S3_PATH env variable is required"}
STORAGE_CLASS=${STORAGE_CLASS:-STANDARD}
DATA_PATH=${DATA_PATH:-/data/}
CRON_SCHEDULE=${CRON_SCHEDULE:-0 1 * * *}
echo "access_key=$ACCESS_KEY" >> /root/.s3cfg
echo "secret_key=$SECRET_KEY" >> /root/.s3cfg
if [[ "$1" == 'no-cron' ]]; then
exec s3cmd sync --verbose "$DATA_PATH" "$S3_PATH" --storage-class=$STORAGE_CLASS "$EXTRAOPTS"
elif [[ "$1" == 'restore' ]]; then
exec s3cmd sync --verbose "$S3_PATH" "$DATA_PATH"
else
echo "$CRON_SCHEDULE s3cmd sync \"$DATA_PATH\" \"$S3_PATH\" --storage-class=$STORAGE_CLASS \"$EXTRAOPTS\"" | crontab -
exec cron -f
fi