improvement(ci): parallelize Docker builds and fix test timeouts#4083
improvement(ci): parallelize Docker builds and fix test timeouts#4083waleedlatif1 merged 2 commits intostagingfrom
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
PR SummaryMedium Risk Overview Optimizes the Fixes flaky/timeouting unit tests by updating Reviewed by Cursor Bugbot for commit 1d3e9d9. Configure here. |
Greptile SummaryThis PR makes three targeted CI/infra improvements: decouples the Docker build jobs from Confidence Score: 5/5Safe to merge — all findings are minor style/completeness suggestions with no impact on CI correctness or production behavior. The CI parallelization was intentionally reviewed and accepted, the Dockerfile cleanup is straightforward, and the test mock fix resolves real CI timeouts. The only remaining notes are a missing apps/sim/tools/index.test.ts — minor mock completeness issue.
|
| Filename | Overview |
|---|---|
| .github/workflows/ci.yml | Removed test-build from needs on build-amd64 and build-ghcr-arm64, letting Docker builds run in parallel with tests; the tradeoff was reviewed and accepted as intentional. |
| docker/app.Dockerfile | Removed duplicate bun install -g turbo from the deps stage; turbo is only needed in the builder stage where it is still present. |
| apps/sim/tools/index.test.ts | Added vi.hoisted + vi.mock for input-validation.server to intercept SSRF-protection calls; mock shape is missing arrayBuffer from SecureFetchResponse, and one test comment is now stale. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart TD
push[Push to main/staging/dev] --> test-build[test-build]
push --> detect-version[detect-version]
detect-version --> build-amd64[build-amd64\n3 matrix jobs]
detect-version --> build-ghcr-arm64[build-ghcr-arm64\n3 matrix jobs]
test-build -. runs in parallel .-> build-amd64
test-build -. runs in parallel .-> build-ghcr-arm64
build-amd64 --> create-ghcr-manifests[create-ghcr-manifests]
build-ghcr-arm64 --> create-ghcr-manifests
create-ghcr-manifests --> create-release[create-release\nversion commits only]
build-amd64 --> process-docs[process-docs\ndocs changes only]
style test-build fill:#f9f,stroke:#333
style build-amd64 fill:#bbf,stroke:#333
style build-ghcr-arm64 fill:#bbf,stroke:#333
Reviews (2): Last reviewed commit: "fix(test): use SecureFetchResponse shape..." | Re-trigger Greptile
aef58ca to
1d3e9d9
Compare
|
@cursor review |
|
@greptile |
There was a problem hiding this comment.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit 1d3e9d9. Configure here.
|
Greptile encountered an error while reviewing this PR. Please reach out to support@greptile.com for assistance. |
Summary
test-buildfromneedsonbuild-amd64andbuild-ghcr-arm64jobs — code reaching main/staging has already been PR-testedbun install -g turboin app.Dockerfile deps stage (only needed in builder stage)secureFetchWithPinnedIPandvalidateUrlWithDNSin tools/index.test.ts to fix two tests timing out in CIType of Change
Testing
Checklist