deploy: skopeo rejects the dev-image probe ref carrying both tag and digest #232

Closed
opened 2026-07-25 17:27:35 +02:00 by dominik.polakovics · 0 comments

Issue #230 (ADR-0056) added the module's default dev-image ref to the deploy wait step's skopeo probe. The ref is pinned tag-and-digest for readability — docker.io/library/buildpack-deps:stable-scm@sha256:07554a82… — and the probe passes it to skopeo verbatim. skopeo's docker:// transport refuses that form, so every probe attempt fails on parse and the wait step spins until the 30-minute deadline:

waiting for docker://docker.io/library/buildpack-deps:stable-scm@sha256:07554a82… … (skopeo: time="2026-07-25T15:25:13Z" level=fatal msg="Error parsing image name \"docker://docker.io/library/buildpack-deps:stable-scm@sha256:07554a82…\": Docker references with both a tag and digest are currently not supported")

The pin itself is correct — podman on the host accepts name:tag@digest and pulls by digest, and ADR-0056 deliberately keeps the tag beside the digest. The probe should strip the tag before handing the ref to skopeo: the digest is the only part that determines whether the ref resolves, so probing docker.io/library/buildpack-deps@sha256:… proves the same pull.

Issue #230 (ADR-0056) added the module's default dev-image ref to the deploy wait step's skopeo probe. The ref is pinned tag-and-digest for readability — `docker.io/library/buildpack-deps:stable-scm@sha256:07554a82…` — and the probe passes it to skopeo verbatim. skopeo's `docker://` transport refuses that form, so every probe attempt fails on parse and the wait step spins until the 30-minute deadline: ``` waiting for docker://docker.io/library/buildpack-deps:stable-scm@sha256:07554a82… … (skopeo: time="2026-07-25T15:25:13Z" level=fatal msg="Error parsing image name \"docker://docker.io/library/buildpack-deps:stable-scm@sha256:07554a82…\": Docker references with both a tag and digest are currently not supported") ``` The pin itself is correct — podman on the host accepts `name:tag@digest` and pulls by digest, and ADR-0056 deliberately keeps the tag beside the digest. The probe should strip the tag before handing the ref to skopeo: the digest is the only part that determines whether the ref resolves, so probing `docker.io/library/buildpack-deps@sha256:…` proves the same pull.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Cloonar/coding-lab#232
No description provided.