fix(github): Fix Integration Tests#5485
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Greptile Overview
Summary
This PR addresses integration test reliability issues by disabling Docker BuildKit caching in the Blacksmith registry infrastructure. The changes add no-cache: true to all Docker build steps and explicit platform specification (--platform linux/arm64) to prevent stale cache issues that were causing test failures.
Key changes:
- Added
no-cache: trueto backend, model server, and integration test image builds - Added
outputs: type=registryfor consistent registry output format - Added explicit
--platform linux/arm64to all Docker pull commands - Applied identical changes to both regular and MIT integration test workflows
The changes are minimal, targeted, and address the specific caching problems mentioned in the PR description. This is a reasonable temporary workaround while the underlying registry caching issues are resolved.
Confidence Score: 5/5
- This PR is safe to merge with minimal risk - it only disables caching as a temporary fix
- Score reflects that this is a low-risk infrastructure fix targeting specific CI/CD issues with no code logic changes, well-tested approach, and clear temporary nature
- No files require special attention - both workflow files contain identical, straightforward configuration changes
Important Files Changed
File Analysis
| Filename | Score | Overview |
|---|---|---|
| .github/workflows/pr-integration-tests.yml | 5/5 | Disabled Docker BuildKit caching and added explicit platform specification to fix integration test reliability issues |
| .github/workflows/pr-mit-integration-tests.yml | 5/5 | Applied identical caching disable changes to MIT edition workflow for consistency |
Sequence Diagram
sequenceDiagram
participant Developer
participant GitHub as GitHub Actions
participant Registry as Blacksmith Registry
participant BuildKit as Docker BuildKit
participant Runner as Test Runner
Developer->>GitHub: Push PR to main branch
GitHub->>Registry: Login to private registry
Note over GitHub,BuildKit: Build Phase (with no-cache: true)
GitHub->>BuildKit: Build backend image with no-cache
BuildKit-->>Registry: Push backend image (no cache reuse)
GitHub->>BuildKit: Build model server image with no-cache
BuildKit-->>Registry: Push model server image (no cache reuse)
GitHub->>BuildKit: Build integration test image with no-cache
BuildKit-->>Registry: Push integration test image (no cache reuse)
Note over GitHub,Runner: Test Execution Phase
GitHub->>Registry: Pull images with explicit --platform linux/arm64
Registry-->>GitHub: Return fresh images (no stale cache)
GitHub->>Runner: Start Docker containers with fresh images
Runner->>Runner: Execute integration tests
Runner-->>GitHub: Return test results
Note over GitHub: Clean up
GitHub->>GitHub: Stop containers and clean up
GitHub->>Developer: Report test results
2 files reviewed, no comments
|
3 Jobs Failed: Run Integration Tests v2 / integration-tests (tests/api_key, tests-api_key) failed on "Wait for service to be ready"Run Integration Tests v2 / required failed on "Run actions/github-script@v7"1 job failed running on non-Blacksmith runners. Summary: 8 successful workflows, 2 failed workflows
Last updated: 2025-09-25 03:02:22 UTC |
Description
[Provide a brief description of the changes in this PR]
There have been some recent issues with the integration tests due to the blacksmith registry having caching issues. We are disabling the caching temporarily in order to unblock the CI.
Context for the issue can be found here: https://onyx-company.slack.com/archives/C09DHFK3220/p1758734368330299
How Has This Been Tested?
[Describe the tests you ran to verify your changes]
Tested by running the CI on a different PR with these same exact changes.
Backporting (check the box to trigger backport action)
Note: You have to check that the action passes, otherwise resolve the conflicts manually and tag the patches.