diff options
| author | crupest <crupest@outlook.com> | 2022-11-23 20:06:23 +0800 | 
|---|---|---|
| committer | crupest <crupest@outlook.com> | 2022-11-23 20:06:23 +0800 | 
| commit | 14c2bc9dd999c0dc83f741eab773f99d51177e1a (patch) | |
| tree | 4688d77820194213887a7b2c2a615ec63b67848f | |
| parent | cdfc8aee50cf713f217656280de07f3e48db1ab5 (diff) | |
| download | crupest-14c2bc9dd999c0dc83f741eab773f99d51177e1a.tar.gz crupest-14c2bc9dd999c0dc83f741eab773f99d51177e1a.tar.bz2 crupest-14c2bc9dd999c0dc83f741eab773f99d51177e1a.zip  | |
Fix coscli.
| -rw-r--r-- | .gitignore | 1 | ||||
| -rw-r--r-- | docker/auto-backup/Dockerfile | 10 | ||||
| -rwxr-xr-x | docker/auto-backup/daemon.bash | 17 | ||||
| -rw-r--r-- | template/coscli-config.yaml.template | 9 | ||||
| -rw-r--r-- | template/docker-compose.yaml.template | 5 | ||||
| -rwxr-xr-x | tool/aio.py | 4 | 
6 files changed, 21 insertions, 25 deletions
@@ -3,4 +3,3 @@ mailserver.env  data  nginx-config  __pycache__ -coscli-config.yaml 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"  diff --git a/template/coscli-config.yaml.template b/template/coscli-config.yaml.template deleted file mode 100644 index d0768a3..0000000 --- a/template/coscli-config.yaml.template +++ /dev/null @@ -1,9 +0,0 @@ -cos: -  base: -    secretid: ${CRUPEST_AUTO_BACKUP_COS_ACCESS_KEY_ID} -    secretkey: ${CRUPEST_AUTO_BACKUP_COS_SECRET_ACCESS_KEY} -    sessiontoken: "" -  buckets: -  - name: ${CRUPEST_AUTO_BACKUP_BUCKET_NAME} -    alias: crupest-backup -    region: ${CRUPEST_AUTO_BACKUP_COS_REGION} diff --git a/template/docker-compose.yaml.template b/template/docker-compose.yaml.template index af87acc..bb8ac3f 100644 --- a/template/docker-compose.yaml.template +++ b/template/docker-compose.yaml.template @@ -106,6 +106,11 @@ services:        context: ./docker/auto-backup        dockerfile: Dockerfile        pull: true +      args: +        - CRUPEST_AUTO_BACKUP_COS_SECRET_ID=${CRUPEST_AUTO_BACKUP_COS_SECRET_ID} +        - CRUPEST_AUTO_BACKUP_COS_SECRET_KEY=${CRUPEST_AUTO_BACKUP_COS_SECRET_KEY} +        - CRUPEST_AUTO_BACKUP_COS_REGION=${CRUPEST_AUTO_BACKUP_COS_REGION} +        - CRUPEST_AUTO_BACKUP_BUCKET_NAME=${CRUPEST_AUTO_BACKUP_BUCKET_NAME}        tags:          - "crupest/auto-backup:latest"      container_name: auto-backup diff --git a/tool/aio.py b/tool/aio.py index 8a07802..687ef40 100755 --- a/tool/aio.py +++ b/tool/aio.py @@ -302,9 +302,9 @@ config_var_list: list = [                "password for halo h2 database, once used never change it", lambda: os.urandom(8).hex()),      ConfigVar("CRUPEST_IN_CHINA",                "set to true if you are in China, some network optimization will be applied", lambda: "false"), -    ConfigVar("CRUPEST_AUTO_BACKUP_COS_ACCESS_KEY_ID", +    ConfigVar("CRUPEST_AUTO_BACKUP_COS_SECRET_ID",                "access key id for Tencent COS, used for auto backup", "Please input your Tencent COS access key id for backup:"), -    ConfigVar("CRUPEST_AUTO_BACKUP_COS_SECRET_ACCESS_KEY", +    ConfigVar("CRUPEST_AUTO_BACKUP_COS_SECRET_KEY",                "access key secret for Tencent COS, used for auto backup", "Please input your Tencent COS access key for backup:"),      ConfigVar("CRUPEST_AUTO_BACKUP_COS_REGION",                "region for Tencent COS, used for auto backup", "Please input your Tencent COS region for backup:", "ap-hongkong"),  | 
