Skip to content

fix(ci): add --provenance=false to all docker builds to fix GHCR push#628

Open
rsatal wants to merge 1 commit into
mainfrom
fix/ghcr-provenance
Open

fix(ci): add --provenance=false to all docker builds to fix GHCR push#628
rsatal wants to merge 1 commit into
mainfrom
fix/ghcr-provenance

Conversation

@rsatal

@rsatal rsatal commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Problem

Run #35 failed 3 consecutive times (all previous runs since PR #584 succeeded):

unknown blob
make: *** [Makefile:191: docker-push-konk-service] Error 1

Root Cause

DOCKER_BUILDKIT=1 docker build on Docker 25+ generates an OCI image index manifest that includes provenance attestation blobs. GHCR fails to verify these referenced blobs on push, producing unknown blob errors.

The most likely trigger is a Docker version bump on the ubuntu-latest runner between the last successful run (#34, May 20) and run #35 (Jun 11), which changed BuildKit's default manifest generation behaviour.

Reference: docker/buildx#1509

Fix

Add --provenance=false to all four docker build targets in the Makefile. This suppresses OCI attestation manifests and produces plain Docker v2 manifests that GHCR handles reliably. This is the documented fix for this class of GHCR push failure.

Related

BuildKit (DOCKER_BUILDKIT=1) generates OCI provenance attestation
manifests by default. GHCR fails to verify the referenced blobs on
push, producing 'unknown blob' errors. This is the root cause of the
3 consecutive push failures for konk-service after merging PR #625.

The other images (konk, konk-app, konk-provision) escaped because
their layers already existed in GHCR from prior runs. The konk-service
binary is new and unique, so its attestation blob is consistently rejected.

Add --provenance=false to all four build targets to suppress OCI
attestation manifests and produce plain Docker v2 manifests that
GHCR handles reliably.
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