aboutsummaryrefslogtreecommitdiff
path: root/docker/auto-backup
diff options
context:
space:
mode:
Diffstat (limited to 'docker/auto-backup')
-rw-r--r--docker/auto-backup/Dockerfile10
-rwxr-xr-xdocker/auto-backup/daemon.bash17
2 files changed, 14 insertions, 13 deletions
diff --git a/docker/auto-backup/Dockerfile b/docker/auto-backup/Dockerfile
index 7df267c..5ac1672 100644
--- a/docker/auto-backup/Dockerfile
+++ b/docker/auto-backup/Dockerfile
@@ -4,11 +4,19 @@ COPY install-coscli.bash /install-coscli.bash
RUN /install-coscli.bash
FROM alpine:latest
-RUN apk add --no-cache coreutils bash tar xz yq
+RUN apk add --no-cache coreutils bash tar xz
ARG CRUPEST_AUTO_BACKUP_INIT_DELAY=0
ARG CRUPEST_AUTO_BACKUP_INTERVAL=1d
+ARG CRUPEST_AUTO_BACKUP_COS_SECRET_ID
+ARG CRUPEST_AUTO_BACKUP_COS_SECRET_KEY
+ARG CRUPEST_AUTO_BACKUP_COS_REGION
+ARG CRUPEST_AUTO_BACKUP_BUCKET_NAME
ENV CRUPEST_AUTO_BACKUP_INIT_DELAY=${CRUPEST_AUTO_BACKUP_INIT_DELAY}
ENV CRUPEST_AUTO_BACKUP_INTERVAL=${CRUPEST_AUTO_BACKUP_INTERVAL}
+ENV CRUPEST_AUTO_BACKUP_COS_SECRET_ID=${CRUPEST_AUTO_BACKUP_COS_SECRET_ID}
+ENV CRUPEST_AUTO_BACKUP_COS_SECRET_KEY=${CRUPEST_AUTO_BACKUP_COS_SECRET_KEY}
+ENV CRUPEST_AUTO_BACKUP_COS_REGION=${CRUPEST_AUTO_BACKUP_COS_REGION}
+ENV CRUPEST_AUTO_BACKUP_BUCKET_NAME=${CRUPEST_AUTO_BACKUP_BUCKET_NAME}
COPY --from=coscli-downloader /coscli /coscli
COPY daemon.bash /daemon.bash
VOLUME [ "/data", "/root/.cos.yaml" ]
diff --git a/docker/auto-backup/daemon.bash b/docker/auto-backup/daemon.bash
index 5dd8cfe..c2b91f9 100755
--- a/docker/auto-backup/daemon.bash
+++ b/docker/auto-backup/daemon.bash
@@ -14,16 +14,9 @@ fi
xz --version
tar --version
-bucket_yaml=$(yq ".buckets[] | select(.alias == \"crupest-backup\")" ~/.cos.yaml)
-
-# check bucket_yaml is not empty
-if [[ -z "$bucket_yaml" ]]; then
- echo "Bucket crupest-backup not found. Please check your coscli config." 1>&2
- exit 1
-fi
-
-bucket_name=$(echo "$bucket_yaml" | yq ".name")
-bucket_region=$(echo "$bucket_yaml" | yq ".region")
+# do not echo next command
+/coscli set --secret_id "${CRUPEST_AUTO_BACKUP_COS_SECRET_ID}" --secret_key "${CRUPEST_AUTO_BACKUP_COS_SECRET_KEY}"
+/coscli add --alias "crupest-backup" --bucket "${CRUPEST_AUTO_BACKUP_BUCKET_NAME}" --region "${CRUPEST_AUTO_BACKUP_COS_REGION}"
function backup {
# Output "Begin backup..." in yellow and restore default
@@ -42,8 +35,8 @@ function backup {
destination="cos://crupest-backup/$current_time.tar.xz"
echo "Use coscli to upload data to $destination ..."
- echo "Bucket name: $bucket_name"
- echo "Bucket region: $bucket_region"
+ echo "Bucket name: ${CRUPEST_AUTO_BACKUP_BUCKET_NAME}"
+ echo "Bucket region: ${CRUPEST_AUTO_BACKUP_COS_REGION}"
# upload to remote
/coscli cp /tmp/data.tar.xz "$destination"