From cf80d059518308892753a290c33126876c1c3333 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20Eppl=C3=A9e?= Date: Wed, 28 May 2025 17:08:02 +0200 Subject: [PATCH 1/4] wip: feat(ci): Build docker container --- .drone.yml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/.drone.yml b/.drone.yml index 12ea97f..8411230 100644 --- a/.drone.yml +++ b/.drone.yml @@ -8,6 +8,12 @@ services: environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres + - name: docker + image: docker:dind + privileged: true + volumes: + - name: dockersock + path: /var/run trigger: event: @@ -95,11 +101,24 @@ steps: - name: cache path: /cache + - name: build & publish container? + image: docker:dind + volumes: + - name: dockersock + path: /var/run + commands: + - sleep 5 # give docker time to start + - docker ps -a + - docker build --tag mitgliederverwaltung . + volumes: - name: cache host: path: /tmp/drone_cache + - name: dockersock + temp: {} + --- kind: pipeline type: docker From d930bde4b77afdc6dede9236b2c85b7216b1ff2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20Eppl=C3=A9e?= Date: Thu, 17 Jul 2025 15:23:39 +0200 Subject: [PATCH 2/4] dropme: remove other drone tasks for faster debugging --- .drone.yml | 81 ------------------------------------------------------ 1 file changed, 81 deletions(-) diff --git a/.drone.yml b/.drone.yml index 8411230..80e0b68 100644 --- a/.drone.yml +++ b/.drone.yml @@ -20,87 +20,6 @@ trigger: - push steps: - - name: compute cache key - image: docker.io/library/elixir:1.18.3-otp-27 - commands: - - mix_lock_hash=$(sha256sum mix.lock | cut -d ' ' -f 1) - - echo "$DRONE_REPO_OWNER/$DRONE_REPO_NAME/$mix_lock_hash" >> .cache_key - # Print cache key for debugging - - cat .cache_key - - - name: restore-cache - image: drillster/drone-volume-cache - settings: - restore: true - mount: - - ./deps - - ./_build - ttl: 30 - volumes: - - name: cache - path: /cache - - - name: lint - image: docker.io/library/elixir:1.18.3-otp-27 - commands: - # Install hex package manager - - mix local.hex --force - # Fetch dependencies - - mix deps.get - # Check for compilation errors & warnings - - mix compile --warnings-as-errors - # Check formatting - - mix format --check-formatted - # Security checks - - mix sobelow --config - # Check dependencies for known vulnerabilities - - mix deps.audit - # Check for dependencies that are not maintained anymore - - mix hex.audit - # Provide hints for improving code quality - - mix credo - - - name: wait_for_postgres - image: docker.io/library/postgres:17.5 - commands: - # Wait for postgres to become available - - | - for i in {1..20}; do - if pg_isready -h postgres -U postgres; then - exit 0 - else - true - fi - sleep 2 - done - echo "Postgres did not become available, aborting." - exit 1 - - - name: test - image: docker.io/library/elixir:1.18.3-otp-27 - environment: - MIX_ENV: test - TEST_POSTGRES_HOST: postgres - TEST_POSTGRES_PORT: 5432 - commands: - # Install hex package manager - - mix local.hex --force - # Fetch dependencies - - mix deps.get - # Run tests - - mix test - - - name: rebuild-cache - image: drillster/drone-volume-cache - settings: - rebuild: true - mount: - - ./deps - - ./_build - volumes: - - name: cache - path: /cache - - name: build & publish container? image: docker:dind volumes: From 384e20b97c735f4b62b5085fc0b5eb34e8f4381f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20Eppl=C3=A9e?= Date: Wed, 28 May 2025 17:08:02 +0200 Subject: [PATCH 3/4] wip: feat(ci): Build docker container --- .drone.yml | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/.drone.yml b/.drone.yml index 12ea97f..4184ce7 100644 --- a/.drone.yml +++ b/.drone.yml @@ -8,6 +8,12 @@ services: environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres + - name: docker + image: docker:dind + privileged: true + volumes: + - name: dockersock + path: /var/run trigger: event: @@ -95,11 +101,24 @@ steps: - name: cache path: /cache + - name: build & publish container? + image: docker:dind + volumes: + - name: dockersock + path: /var/run + commands: + - sleep 5 # give docker time to start + - docker ps -a + - docker build --tag mitgliederverwaltung . + volumes: - name: cache host: path: /tmp/drone_cache + - name: dockersock + temp: {} + --- kind: pipeline type: docker From 58bd49c27af353cd2536ceb3cc68b1ece89cd342 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rafael=20Eppl=C3=A9e?= Date: Thu, 17 Jul 2025 15:23:39 +0200 Subject: [PATCH 4/4] dropme: remove other drone tasks for faster debugging --- .drone.yml | 81 ------------------------------------------------------ 1 file changed, 81 deletions(-) diff --git a/.drone.yml b/.drone.yml index 4184ce7..40e7267 100644 --- a/.drone.yml +++ b/.drone.yml @@ -20,87 +20,6 @@ trigger: - push steps: - - name: compute cache key - image: docker.io/library/elixir:1.18.3-otp-27 - commands: - - mix_lock_hash=$(sha256sum mix.lock | cut -d ' ' -f 1) - - echo "$DRONE_REPO_OWNER/$DRONE_REPO_NAME/$mix_lock_hash" >> .cache_key - # Print cache key for debugging - - cat .cache_key - - - name: restore-cache - image: drillster/drone-volume-cache - settings: - restore: true - mount: - - ./deps - - ./_build - ttl: 30 - volumes: - - name: cache - path: /cache - - - name: lint - image: docker.io/library/elixir:1.18.3-otp-27 - commands: - # Install hex package manager - - mix local.hex --force - # Fetch dependencies - - mix deps.get - # Check for compilation errors & warnings - - mix compile --warnings-as-errors - # Check formatting - - mix format --check-formatted - # Security checks - - mix sobelow --config - # Check dependencies for known vulnerabilities - - mix deps.audit - # Check for dependencies that are not maintained anymore - - mix hex.audit - # Provide hints for improving code quality - - mix credo - - - name: wait_for_postgres - image: docker.io/library/postgres:17.5 - commands: - # Wait for postgres to become available - - | - for i in {1..20}; do - if pg_isready -h postgres -U postgres; then - exit 0 - else - true - fi - sleep 2 - done - echo "Postgres did not become available, aborting." - exit 1 - - - name: test - image: docker.io/library/elixir:1.18.3-otp-27 - environment: - MIX_ENV: test - TEST_POSTGRES_HOST: postgres - TEST_POSTGRES_PORT: 5432 - commands: - # Install hex package manager - - mix local.hex --force - # Fetch dependencies - - mix deps.get - # Run tests - - mix test - - - name: rebuild-cache - image: drillster/drone-volume-cache - settings: - rebuild: true - mount: - - ./deps - - ./_build - volumes: - - name: cache - path: /cache - - name: build & publish container? image: docker:dind volumes: