ci: optimize staging image builds and increase promotion timeout#1021
Conversation
❌ Deploy Preview for agent-sandbox failed. Why did it fail? →
|
📝 WalkthroughWalkthroughCloud Build VM ChangesCI Build Pipeline Improvements
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ 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 |
There was a problem hiding this comment.
Pull request overview
This PR tunes the release/CI image pipeline to be more resilient and faster in staging by increasing promotion polling timeouts, allocating more Cloud Build CPU, and enabling docker buildx registry-backed layer caching for repeat builds.
Changes:
- Increase staging registry polling window in
tag-promote-imagesfrom 45 to 90 minutes per image. - Configure
dev/tools/push-imagesto publish and consume a registry cache manifest (:buildcache) when pushing images viabuildx. - Increase Cloud Build machine type to
E2_HIGHCPU_32to speed dependency compilation-heavy image builds.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| dev/tools/tag-promote-images | Extends the staging registry polling loop to wait longer for postsubmit-built images. |
| dev/tools/push-images | Adds buildx --cache-from/--cache-to registry caching to accelerate subsequent image builds. |
| cloudbuild.yaml | Upsizes Cloud Build machine type to reduce overall image build time. |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: aditya-shantanu, janetkuo The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
Suspect the Netlify build failures coming from #660 (review). This PR didn't make site changes. |
|
/label tide/merge-method-rebase |
|
/lgtm |
What this PR does / why we need it:
Optimizes staging image builds and increases the release promotion polling timeout to prevent CI pipeline failures during scheduled releases. Specifically:
dev/tools/tag-promote-imagesfrom 45 to 90 minutes to accommodate slower Prow postsubmit builds.cloudbuild.yamlfromE2_HIGHCPU_8toE2_HIGHCPU_32(32 vCPUs, 32 GB RAM) to accelerate C/Python dependency compilation.docker buildxindev/tools/push-imagesto push and pull layer cache manifests (type=registry) to/from the K8s staging Artifact Registry (:buildcache), allowing subsequent Prow builds to instantly reuse pre-compiled Python wheels and base layers.Which issue(s) this PR is related to:
NONE
Release Note
Summary by CodeRabbit