Skip to content

fix(cli): run check deep-probes via docker run, not docker compose run#46

Merged
Medformatik merged 1 commit into
mainfrom
fix/cli-check-deep-probe
Jun 6, 2026
Merged

fix(cli): run check deep-probes via docker run, not docker compose run#46
Medformatik merged 1 commit into
mainfrom
fix/cli-check-deep-probe

Conversation

@Medformatik

Copy link
Copy Markdown
Collaborator

Summary

pnpm openmapx check reported every service as probe-fail: unknown flag: --network. The deep-probe ran through the dockerCompose() helper, but docker compose run (v2+) has no --network flag and expects a service name, not an image — so the ephemeral HTTP-client container was never reachable. The probe image was also alpine/wget:1.27.0, a tag that doesn't exist on Docker Hub, so it could never have pulled even if the flag were accepted.

This switches the probe to a new dockerRun() helper (plain docker run), drops the compose-only --no-deps flag, and uses a real pinned image (curlimages/curl:8.20.0). The probe-command assembly is extracted into buildProbeArgs() and covered by unit tests that lock in docker run + --network + a valid curl image.

Verified on the staging host (Docker 29.4.1 / Compose v5.1.3): the new docker run curlimages/curl:8.20.0 --network docker_openmapx -fsS --max-time 5 <url> form returns healthy responses for all probed services (valhalla, app-api, data-manager, photon, motis, tileserver, motis-feed-proxy).

Note: the overpass probe surfaces a separate, pre-existing issue — its [out:json];node(1);out; query returns an XML error page that won't match the elements expectation. That's independent of this --network fix and left for a follow-up.

`openmapx check` deep-probes failed on every service with "unknown flag: --network". The probe was issued through the dockerCompose() helper, but `docker compose run` has no --network flag and expects a service name rather than an image, so it never reached the ephemeral HTTP-client container.

Switch the probe to a new dockerRun() helper (plain `docker run`), drop the compose-only --no-deps flag, and use a real pinned image (curlimages/curl:8.20.0; the previous alpine/wget:1.27.0 tag does not exist on Docker Hub). Extract buildProbeArgs() and cover it with tests.
@changeset-bot

changeset-bot Bot commented Jun 6, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: d36e088

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@Medformatik
Medformatik merged commit 346fbed into main Jun 6, 2026
3 of 4 checks passed
@Medformatik
Medformatik deleted the fix/cli-check-deep-probe branch June 6, 2026 19:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant