From 1dcc518242be589794de1f265d2ee90acdb5c9d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ullrich=20Sch=C3=A4fer?= Date: Sun, 17 May 2026 22:44:23 +0200 Subject: [PATCH] Pre-seed BRouter volume in CI instead of bind mount override The bind mount override (docker-compose.ci.yml) failed because file permissions on the cached segment prevented the entrypoint from seeing the file, causing a fresh download on every CI run. Instead: create the named volume and copy the cached segment into it before compose starts, using alpine with explicit chmod. The entrypoint then finds the segment and skips the download, so BRouter starts in ~4s instead of ~2min. Co-Authored-By: Claude Sonnet 4.6 --- .github/workflows/ci.yml | 10 +++++++++- docker-compose.ci.yml | 4 ---- 2 files changed, 9 insertions(+), 5 deletions(-) delete mode 100644 docker-compose.ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b8904ab..fa19126 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -204,8 +204,16 @@ jobs: mkdir -p /tmp/brouter-segments wget -q "https://brouter.de/brouter/segments4/E10_N50.rd5" -O /tmp/brouter-segments/E10_N50.rd5 + - name: Pre-seed BRouter segment volume + run: | + docker volume create trails_brouter_segments + docker run --rm \ + -v /tmp/brouter-segments:/src:ro \ + -v trails_brouter_segments:/dst \ + alpine sh -c "cp /src/*.rd5 /dst/ && chmod a+r /dst/*.rd5" + - name: Start services - run: docker compose -f docker-compose.dev.yml -f docker-compose.ci.yml up -d --wait --build + run: docker compose -f docker-compose.dev.yml up -d --wait --build env: BROUTER_URL: http://localhost:17777 diff --git a/docker-compose.ci.yml b/docker-compose.ci.yml deleted file mode 100644 index f900e4b..0000000 --- a/docker-compose.ci.yml +++ /dev/null @@ -1,4 +0,0 @@ -services: - brouter: - volumes: - - /tmp/brouter-segments:/data/segments