ci(docker): build on unified release tags + wait for dep images like jans#2907
Conversation
…jans Two fixes for the docker publish on a tag release: - Prepare only built for per-image docker-<img>-v* tags; a unified v6.2.0 tag hit the catch-all (BUILD=""), so prep.outputs.build was empty and build/push were skipped - the job went green but published nothing. Add a refs/tags/v* case that builds every image at its Dockerfile version (the OCI image.version label, e.g. 6.2.0-1). - flex-all-in-one now waits for admin-ui + persistence-loader the way jans's all-in-one does: poll those sibling matrix jobs' conclusions via the API (proceed on success/skipped, fail fast on a failed dep) instead of polling docker pull. Adds actions:read + GH_TOKEN for the poll. Signed-off-by: moauto <54212639+mo-auto@users.noreply.github.com>
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe workflow adds GitHub Actions read access, passes ChangesDocker build workflow
Sequence Diagram(s)sequenceDiagram
participant FlexAllInOne as flex-all-in-one
participant GitHubActionsAPI as GitHub Actions API
participant AdminUIJob as docker (admin-ui)
participant PersistenceLoaderJob as docker (persistence-loader)
FlexAllInOne->>GitHubActionsAPI: request sibling job conclusions
GitHubActionsAPI->>AdminUIJob: check conclusion
GitHubActionsAPI->>PersistenceLoaderJob: check conclusion
AdminUIJob-->>GitHubActionsAPI: success / skipped / failure
PersistenceLoaderJob-->>GitHubActionsAPI: success / skipped / failure
GitHubActionsAPI-->>FlexAllInOne: return conclusions
alt both success or skipped
FlexAllInOne->>FlexAllInOne: continue build
else any failure, cancelled, or timed_out
FlexAllInOne->>FlexAllInOne: abort
else still pending until timeout
FlexAllInOne->>GitHubActionsAPI: sleep then poll again
end
Estimated code review effort🎯 4 (Complex) | ⏱️ ~45 minutes Suggested labels
Suggested reviewers
Poem
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Summary
Fixes the docker publish on a tag release — the run that went green but built/published nothing (28161595588).
1. Build on the unified
v*release tag.Prepareonly proceeded for per-imagedocker-<img>-v*tags; a unifiedv6.2.0tag hit the catch-allelif refs/tags/* → BUILD="", soprep.outputs.buildwas empty and the build/push steps were skipped (the job still reported success). Added arefs/tags/v*case that builds every image at its Dockerfile version — the OCIimage.versionlabel (6.2.0-1).2. flex-all-in-one waits for its dependency images, like jans. Replaced the
docker pullpoll with jans's mechanism: poll the sibling matrix jobs' conclusions (docker (admin-ui),docker (persistence-loader)) viagh api .../jobs— proceed onsuccess/skipped, fail fast if a dependency job fails/cancels/times out. Addedactions: read+GH_TOKENso the poll can read job status.Summary by CodeRabbit