Modernise Dockerfile and cache Docker build layers in CI#8855
Modernise Dockerfile and cache Docker build layers in CI#8855tautschnig wants to merge 1 commit intodiffblue:developfrom
Conversation
There was a problem hiding this comment.
Pull request overview
Enable compiler caching in Docker builds (via BuildKit cache mounts + ccache) to speed up repeated rebuilds, and modernize Dockerfile syntax.
Changes:
- Add BuildKit syntax directive and a cache mount for
/root/.cache/ccache, plus installccachein the builder stage - Configure CMake to use
ccacheviaCMAKE_*_COMPILER_LAUNCHER - Update CI Docker build command to pass
BUILDKIT_INLINE_CACHE=1
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| Dockerfile | Adds ccache + BuildKit cache mount and updates Dockerfile syntax for multi-stage build/env vars. |
| .github/workflows/pull-request-checks.yaml | Adjusts Docker build invocation to pass a BuildKit inline-cache build arg. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
864a2aa to
e7c6961
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
9eac5ac to
825511b
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #8855 +/- ##
===========================================
- Coverage 80.01% 80.00% -0.01%
===========================================
Files 1703 1703
Lines 188396 188396
Branches 73 73
===========================================
- Hits 150738 150735 -3
- Misses 37658 37661 +3 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Modernise the Dockerfile syntax: - Use '=' form for ENV directives (required by newer Docker versions) - Use uppercase AS for multi-stage build aliases Speed up the check-docker-image CI job by caching Docker build layers via BuildKit's GitHub Actions cache backend (type=gha). On cache hit the expensive cmake/ninja layer is skipped entirely. Uses mode=max to cache intermediate layers from the multi-stage build. Co-authored-by: Kiro <kiro-agent@users.noreply.github.com>
825511b to
ebf3b85
Compare
| @@ -1014,8 +1014,14 @@ jobs: | |||
| run: | | |||
| sudo apt update | |||
| sudo apt install openjdk-11-jdk-headless | |||
Modernise the Dockerfile syntax:
Speed up the check-docker-image CI job by caching Docker build layers
via BuildKit's GitHub Actions cache backend (type=gha). On cache hit
the expensive cmake/ninja layer is skipped entirely. Uses mode=max to
cache intermediate layers from the multi-stage build.
Co-authored-by: Kiro kiro-agent@users.noreply.github.com