improve CI build times (WIP)#2322
Conversation
There was a problem hiding this comment.
Pull request overview
This PR aims to reduce CI build time by improving Docker BuildKit layer cache reuse/avoidance across jobs and by narrowing multi-arch validation on pull requests.
Changes:
- Added CI-controlled per-image BuildKit
type=ghacache arguments in the rootMakefile. - Updated CI workflow to use the new cache variables and to build only
linux/amd64on PRs (bothamd64/arm64onmain/release pushes). - Removed the “cancel previous actions” step from the shared
initialize-environmentcomposite action.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| Makefile | Introduces docker-cache-args and wires it into image build targets to enable per-image GHA cache scopes. |
| .github/workflows/ci.yaml | Switches cache configuration to CI_CACHE_* env vars, adjusts platforms per event type, and trims the build matrix. |
| .github/actions/initialize-environment/action.yaml | Removes a workflow-cancel step from the shared init action. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
b0978a2 to
8eac06d
Compare
| ACP_SANDBOX_HERMES_IMG ?= $(DOCKER_REGISTRY)/$(DOCKER_REPO)/$(ACP_SANDBOX_HERMES_IMAGE_NAME):$(ACP_SANDBOX_IMAGE_TAG) | ||
| ACP_SANDBOX_OPENCLAW_IMG ?= $(DOCKER_REGISTRY)/$(DOCKER_REPO)/$(ACP_SANDBOX_OPENCLAW_IMAGE_NAME):$(ACP_SANDBOX_IMAGE_TAG) | ||
| ACP_SANDBOX_CLAUDE_IMG ?= $(DOCKER_REGISTRY)/$(DOCKER_REPO)/$(ACP_SANDBOX_CLAUDE_IMAGE_NAME):$(ACP_SANDBOX_IMAGE_TAG) | ||
| E2E_ACP_SANDBOX_OPENCLAW_IMG ?= $(ACP_SANDBOX_OPENCLAW_IMG)@sha256:eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee |
There was a problem hiding this comment.
hm, these fake sha256:eeee digests get baked straight into AcpSandboxOpenClawImageDigest/HermesImageDigest via the ldflags script (it shortcuts on the @sha256: form and skips resolving a real one), and constants.go uses those to build the actual image ref, so the day sth adds an e2e test w openclaw or hermes runtime it'll just imagepullbackoff w no clue why
wip