UID2-7041: add Set up Docker Buildx to Java publish workflow#232
Merged
Conversation
push-by-digest=true is only implemented in the docker-container driver, not the default docker driver. The composite already sets up buildx; the Java workflow was missing it, breaking every Java publish after PR #231 merged. Mirror the composite's pinned setup-buildx-action. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
push-by-digest=true rejects uppercase characters in the repo path (unlike the prior tags: input which went through docker/metadata-action and was lowercased there). github.repository preserves the original casing, so IABTechLab/uid2-admin fails to parse. Add a Lowercase image reference step before the push and reuse the output in both push and promote, mirroring the pattern in actions/attest_image. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
swibi-ttd
approved these changes
May 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follow-up to PR #231 (UID2-7041). Two regressions that #231 introduced into the Java reusable workflow
shared-publish-java-to-docker-versioned.yaml:docker/setup-buildx-action—push-by-digest=trueis only implemented in thedocker-containerdriver, not the defaultdockerdriver. Caused:ERROR: failed to build: push-by-digest is currently not implemented for docker driver, please create a new builder instance— https://github.com/IABTechLab/uid2-admin/actions/runs/25890841551/job/76093405178tags:field was lowercased bydocker/metadata-action; the newoutputs: type=image,name=<expr>is not, so${{ github.repository }}(case-preserving) failed:invalid reference format: repository name (IABTechLab/uid2-admin) must be lowercase.Same root cause for both: Task 2 inlined the push step in the Java workflow without re-creating the supporting setup that
docker/metadata-actionand the composite'sSet up Docker Buildxstep were providing.Fix
shared-publish-java-to-docker-versioned.yaml): adddocker/setup-buildx-action@8d2750c6...step, plus aLowercase image referencestep whose output is reused in both pushoutputs:and promoteSOURCE:.actions/shared_publish_to_docker/action.yaml): add the sameLowercase image referencestep for defensive symmetry — current generic-flow callers happen to pass lowercasedocker_image_name, but the case wasn't enforced. (Buildx setup was already present in the composite.)Smoke evidence
Pinned consumer test branches to this PR's tip SHA, dispatched Snapshot releases (snapshot path = real push-by-digest + promote, with attest correctly skipped):
Scope of breakage from #231
shared-publish-to-docker-versioned.yaml): only the lowercase fix is defensively useful; buildx was already set up and current generic-flow callers pass lowercasedocker_image_name, so no live breakage.shared-publish-java-to-docker-versioned.yaml): both fixes needed. Every Java publish after UID2-7041: promote OCI tag only after attest+verify pass #231 merged was broken; ship this and re-cut@v3ASAP.Test plan
update-major-version-tagsmoves@v3to this SHA@v3🤖 Generated with Claude Code