From b6f859efbb0c2c8be3567de9fc8710806bdcb0ed Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Fri, 10 Nov 2023 14:52:59 +0000 Subject: [PATCH 01/11] Reinstate Docker image --- .drone.yml | 23 +++++++++++++++-------- Dockerfile | 10 ++++++++++ 2 files changed, 25 insertions(+), 8 deletions(-) create mode 100644 Dockerfile diff --git a/.drone.yml b/.drone.yml index e2f0fe8..9539ea4 100644 --- a/.drone.yml +++ b/.drone.yml @@ -2,11 +2,18 @@ kind: pipeline name: linters steps: - - name: run shellcheck - image: koalaman/shellcheck-alpine - commands: - - shellcheck backup.sh - -trigger: - branch: - - main + - name: publish image + image: plugins/docker + settings: + username: 3wordchant + password: + from_secret: git_coopcloud_tech_token_3wc + repo: git.coopcloud.tech/coop-cloud/backup-bot-two + tags: 2.0.0 + registry: git.coopcloud.tech + depends_on: + - run shellcheck + when: + event: + exclude: + - pull_request diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..ba47a7d --- /dev/null +++ b/Dockerfile @@ -0,0 +1,10 @@ +FROM docker:24.0.7-dind + +RUN apk add --upgrade --no-cache restic bash python3 py3-pip + +# Todo use requirements file with specific versions +RUN pip install click==8.1.7 docker==6.1.3 resticpy==1.0.2 + +COPY backupbot.py /usr/bin/backup + +ENTRYPOINT /bin/bash -- 2.40.1 From c7830ceb6f57c68e5a27b0a12f12160d2f2ba149 Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Fri, 10 Nov 2023 14:53:48 +0000 Subject: [PATCH 02/11] Whoops skip shellcheck --- .drone.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/.drone.yml b/.drone.yml index 9539ea4..b40c815 100644 --- a/.drone.yml +++ b/.drone.yml @@ -11,8 +11,6 @@ steps: repo: git.coopcloud.tech/coop-cloud/backup-bot-two tags: 2.0.0 registry: git.coopcloud.tech - depends_on: - - run shellcheck when: event: exclude: -- 2.40.1 From 50e4d6871730da3a6ff913f39e2e9492c0d95a79 Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Fri, 10 Nov 2023 16:55:41 +0000 Subject: [PATCH 03/11] Switch to backup-bot-two image --- compose.yml | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/compose.yml b/compose.yml index 3a0292d..debce83 100644 --- a/compose.yml +++ b/compose.yml @@ -2,7 +2,7 @@ version: "3.8" services: app: - image: docker:24.0.7-dind + image: git.coopcloud.tech/coop-cloud:2.0.0 volumes: - "/var/run/docker.sock:/var/run/docker.sock" - "/var/lib/docker/volumes/:/var/lib/docker/volumes/" @@ -23,9 +23,6 @@ services: - source: entrypoint target: /entrypoint.sh mode: 0555 - - source: backupbot - target: /usr/bin/backup - mode: 0555 entrypoint: ['/entrypoint.sh'] #entrypoint: ['tail', '-f','/dev/null'] healthcheck: @@ -47,6 +44,3 @@ configs: entrypoint: name: ${STACK_NAME}_entrypoint_${ENTRYPOINT_VERSION} file: entrypoint.sh - backupbot: - name: ${STACK_NAME}_backupbot_${BACKUPBOT_VERSION} - file: backupbot.py -- 2.40.1 From c5574edc54ff1c55974e4a8243ea98375df7ce38 Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Fri, 10 Nov 2023 18:09:50 +0000 Subject: [PATCH 04/11] Whoops, wrong image --- compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compose.yml b/compose.yml index debce83..d598d10 100644 --- a/compose.yml +++ b/compose.yml @@ -2,7 +2,7 @@ version: "3.8" services: app: - image: git.coopcloud.tech/coop-cloud:2.0.0 + image: git.coopcloud.tech/coop-cloud/backup-bot-two:2.0.0 volumes: - "/var/run/docker.sock:/var/run/docker.sock" - "/var/lib/docker/volumes/:/var/lib/docker/volumes/" -- 2.40.1 From 001a654e37661d59c030e1de7d9341cd05904276 Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Fri, 10 Nov 2023 18:11:32 +0000 Subject: [PATCH 05/11] Remove redundant stuff from entrypoint --- abra.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/abra.sh b/abra.sh index 29c8f69..03343f2 100644 --- a/abra.sh +++ b/abra.sh @@ -1,4 +1,4 @@ -export ENTRYPOINT_VERSION=v1 +export ENTRYPOINT_VERSION=v2 export BACKUPBOT_VERSION=v1 export SSH_CONFIG_VERSION=v1 -- 2.40.1 From e77432e3abad1934b958dd5a9d48bec4e0dfcf61 Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Tue, 9 Apr 2024 22:31:46 -0300 Subject: [PATCH 06/11] Move /entrypoint.sh to Dockerfile --- Dockerfile | 1 + compose.yml | 3 +-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index ba47a7d..b79f7a0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,3 +8,4 @@ RUN pip install click==8.1.7 docker==6.1.3 resticpy==1.0.2 COPY backupbot.py /usr/bin/backup ENTRYPOINT /bin/bash +CMD /entrypoint.sh diff --git a/compose.yml b/compose.yml index d598d10..34d1f51 100644 --- a/compose.yml +++ b/compose.yml @@ -23,8 +23,7 @@ services: - source: entrypoint target: /entrypoint.sh mode: 0555 - entrypoint: ['/entrypoint.sh'] - #entrypoint: ['tail', '-f','/dev/null'] + #entrypoint: ['tail', '-f','/dev/null'] healthcheck: test: "pgrep crond" interval: 30s -- 2.40.1 From bd581fd8d77a40b549235fa11fa17d11daf21221 Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Tue, 9 Apr 2024 22:36:18 -0300 Subject: [PATCH 07/11] Move entrypoint script into Docker image --- Dockerfile | 1 + abra.sh | 1 - compose.yml | 9 --------- entrypoint.sh | 7 +------ 4 files changed, 2 insertions(+), 16 deletions(-) diff --git a/Dockerfile b/Dockerfile index b79f7a0..8b35415 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,6 +6,7 @@ RUN apk add --upgrade --no-cache restic bash python3 py3-pip RUN pip install click==8.1.7 docker==6.1.3 resticpy==1.0.2 COPY backupbot.py /usr/bin/backup +COPY entrypoint.sh /entrypoint.sh ENTRYPOINT /bin/bash CMD /entrypoint.sh diff --git a/abra.sh b/abra.sh index 03343f2..ce50a91 100644 --- a/abra.sh +++ b/abra.sh @@ -1,4 +1,3 @@ -export ENTRYPOINT_VERSION=v2 export BACKUPBOT_VERSION=v1 export SSH_CONFIG_VERSION=v1 diff --git a/compose.yml b/compose.yml index 34d1f51..5ba9e96 100644 --- a/compose.yml +++ b/compose.yml @@ -19,10 +19,6 @@ services: - coop-cloud.${STACK_NAME}.version=0.1.0+latest - coop-cloud.${STACK_NAME}.timeout=${TIMEOUT:-300} - coop-cloud.backupbot.enabled=true - configs: - - source: entrypoint - target: /entrypoint.sh - mode: 0555 #entrypoint: ['tail', '-f','/dev/null'] healthcheck: test: "pgrep crond" @@ -38,8 +34,3 @@ secrets: volumes: backups: - -configs: - entrypoint: - name: ${STACK_NAME}_entrypoint_${ENTRYPOINT_VERSION} - file: entrypoint.sh diff --git a/entrypoint.sh b/entrypoint.sh index 6af0132..5c25ed7 100644 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -1,11 +1,6 @@ #!/bin/sh -set -e -o pipefail - -apk add --upgrade --no-cache restic bash python3 py3-pip py3-click py3-docker-py py3-json-logger curl - -# Todo use requirements file with specific versions -pip install --break-system-packages resticpy==1.0.2 +set -e if [ -n "$SSH_HOST_KEY" ] then -- 2.40.1 From 26162a9e38fa30513e2a2d57e8f3942550dd26e6 Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Tue, 9 Apr 2024 22:39:18 -0300 Subject: [PATCH 08/11] Add --break-system-packages, surely we don't need a virtualenv --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 8b35415..a7f8a3e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,7 +3,7 @@ FROM docker:24.0.7-dind RUN apk add --upgrade --no-cache restic bash python3 py3-pip # Todo use requirements file with specific versions -RUN pip install click==8.1.7 docker==6.1.3 resticpy==1.0.2 +RUN pip install click==8.1.7 docker==6.1.3 resticpy==1.0.2 --break-system-packages COPY backupbot.py /usr/bin/backup COPY entrypoint.sh /entrypoint.sh -- 2.40.1 From ec4c4509dc1649da69a5763d3894c9088e2418a2 Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Fri, 12 Apr 2024 13:34:13 -0300 Subject: [PATCH 09/11] Make entrypoint executable --- entrypoint.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 entrypoint.sh diff --git a/entrypoint.sh b/entrypoint.sh old mode 100644 new mode 100755 -- 2.40.1 From e5b9bc0446c34568362f8acc4403e0a109608342 Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Sat, 13 Apr 2024 13:18:22 -0300 Subject: [PATCH 10/11] Update requirements --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index a7f8a3e..e8d6fc0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,9 +1,9 @@ FROM docker:24.0.7-dind -RUN apk add --upgrade --no-cache restic bash python3 py3-pip +RUN apk add --upgrade --no-cache restic bash python3 py3-pip py3-click py3-docker-py py3-json-logger curl # Todo use requirements file with specific versions -RUN pip install click==8.1.7 docker==6.1.3 resticpy==1.0.2 --break-system-packages +RUN pip install --break-system-packages resticpy==1.0.2 COPY backupbot.py /usr/bin/backup COPY entrypoint.sh /entrypoint.sh -- 2.40.1 From 4d39d84733c0f8138f39bec8eaae926993437d9b Mon Sep 17 00:00:00 2001 From: 3wc <3wc@doesthisthing.work> Date: Sun, 14 Apr 2024 23:02:08 -0300 Subject: [PATCH 11/11] Switch ENTRYPOINT to try to resolve loop on start --- Dockerfile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index e8d6fc0..d91852c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -8,5 +8,4 @@ RUN pip install --break-system-packages resticpy==1.0.2 COPY backupbot.py /usr/bin/backup COPY entrypoint.sh /entrypoint.sh -ENTRYPOINT /bin/bash -CMD /entrypoint.sh +ENTRYPOINT /entrypoint.sh -- 2.40.1