Conversation
- add dedicated reusable workflow for latest/release pd-store-server publishing - split multi-arch publishing into amd64 first, arm64 second, then manifest merge - introduce latest schedule and hash gate using LAST_SERVER_HASH - remove standalone server latest/release workflows and update README map
- switch cache export to mode=min with ignore-error to avoid hard failures - add shared plus module cache scopes for better cross-module Maven layer reuse - separate amd64 and arm64 cache scopes to reduce cross-arch cache contention - add upstream refactor notes for Dockerfile and artifact-based build dedup
- remove unused checkout_ref output and related shell assignment - serialize build_matrix_json with multiline output to reduce quoting risk - clarify hstore wording in README for external readers - keep workflow map list focused on triggerable wrapper workflows
- make latest strict_mode expression robust to both boolean and string false - smoke-test standalone amd64 image locally before pushing registry tag - keep non-smoke modules on direct build-and-push path - clarify README wrapper inputs and matrix ownership wording
- change shared cache to read-only by removing shared scope from cache-to - keep per-module cache export with mode=min and ignore-error=true - preserve shared scope in cache-from for best-effort reuse - fix README grammar for scheduled/hash-gated wrapper guidance
- remove unused shared cache scopes from cache-from across precheck and publish jobs - keep module-scoped cache-from/cache-to only for amd64 and arm64 builds - preserve min-sized cache export with ignore-error for stability - simplify cache behavior to match actual producer/consumer flow
- add Docker Hub tag cleanup after successful manifest publish in pd/store/server flow - keep partial amd64 availability when arm64 fails by cleaning only in publish_manifest job - document the critical pd/store/server release pipeline with an ASCII workflow diagram - align AGENTS.md with the staged dual-arch publish and cleanup semantics
|
Caution Review failedPull request was closed or merged during review Walkthrough此PR引入了一个新的可重用GitHub Actions工作流来发布pd-store-server Docker镜像,并重构了相关的发布工作流以使用该可重用工作流,同时更新了文档以反映新的发布架构。 Changes
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
Suggested labels
Poem
Important Merge conflicts detected (Beta)
✨ 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 of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request significantly enhances the documentation surrounding the image publishing workflows, with a particular focus on the critical Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. Ignored Files
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. Footnotes
|
There was a problem hiding this comment.
Code Review
This pull request updates the documentation in AGENTS.md and README.md to reflect a new, more complex CI/CD workflow for publishing pd/store/server images. The changes introduce a new reusable workflow, a staged multi-architecture build process, and detailed diagrams and explanations. The documentation is comprehensive and clear. I have one minor suggestion to improve the clarity of the integration precheck description in the workflow diagram.
| | | ||
| v | ||
| integration_precheck (optional) | ||
| (compose health check for pd/store/server-hstore) |
There was a problem hiding this comment.
The term pd/store/server-hstore in the diagram is a bit ambiguous. It could be interpreted as a single module name. To improve clarity for other developers, consider explicitly stating that this is a combined health check for multiple components.
| (compose health check for pd/store/server-hstore) | |
| (compose health check for pd, store, and server-hstore) |
There was a problem hiding this comment.
Pull request overview
This PR updates the repository’s Docker image publishing automation by consolidating the server publishing flow into the existing pd/store/server pipeline and introducing a dedicated reusable workflow for pd/store/server with staged per-arch publishing and manifest merging.
Changes:
- Add a new reusable workflow for
pd/store/serverthat runs optional integration precheck, publishesamd64thenarm64, merges manifests, and cleans up temporary arch tags. - Add a new
publish_release_pd_store_server_image.ymlwrapper and updatepublish_latest_pd_store_server_image.ymlto use the new reusable workflow (including scheduled auto-runs). - Update documentation (README + AGENTS) to reflect the new workflow topology and critical-path behavior; remove standalone server publish wrappers.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
README.md |
Documents the split between standard publishing and the new dedicated pd/store/server reusable workflow, including critical-path semantics. |
AGENTS.md |
Captures contributor guidance and intent for pd/store/server publishing (staged arch behavior and tag cleanup). |
.github/workflows/publish_release_server_image.yml |
Removes the standalone server release wrapper in favor of the pd/store/server release flow. |
.github/workflows/publish_latest_server_image.yml |
Removes the standalone server latest wrapper in favor of the pd/store/server latest flow. |
.github/workflows/publish_release_pd_store_server_image.yml |
Adds a release wrapper that calls the new pd/store/server reusable workflow. |
.github/workflows/publish_latest_pd_store_server_image.yml |
Switches to the new reusable workflow and enables scheduled execution. |
.github/workflows/_publish_pd_store_server_reusable.yml |
Implements the dedicated pd/store/server publish pipeline (precheck → amd64 → arm64 → manifest → cleanup → optional hash update). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Summary by CodeRabbit
发布说明