collector
collector copied to clipboard
Use docker cache mount on builder image
Description
This should only have an effect on development, on CI the cache will not exist and the builds will always happen from scratch.
A small cmake wrapper function has been created to abstract the common logic of configuring, compiling and installing on all modules.
In the past we have tried to use ccache in a similar way, but that ended up being quite convoluted, this approach is a lot more straightforward IMO.
Checklist
- [x] Investigated and inspected CI test results
- [ ] Updated documentation accordingly
Automated testing
- [ ] Added unit tests
- [ ] Added integration tests
- [ ] Added regression tests
If any of these don't apply, please comment below.
Testing Performed
Output of time make builder from scratch and after making a change to one of the install scripts:
BUILD_BUILDER_IMAGE=true make builder 5.82s user 1.23s system 0% cpu 17:28.09 total
BUILD_BUILDER_IMAGE=true make builder 5.35s user 0.91s system 4% cpu 2:06.03 total
Codecov Report
:white_check_mark: All modified and coverable lines are covered by tests.
:white_check_mark: Project coverage is 28.83%. Comparing base (442257b) to head (cc9ba62).
:white_check_mark: All tests successful. No failed tests found.
Additional details and impacted files
@@ Coverage Diff @@
## master #2541 +/- ##
=======================================
Coverage 28.83% 28.83%
=======================================
Files 96 96
Lines 5799 5799
Branches 2551 2551
=======================================
Hits 1672 1672
Misses 3408 3408
Partials 719 719
| Flag | Coverage Δ | |
|---|---|---|
| collector-unit-tests | 28.83% <ø> (ø) |
Flags with carried forward coverage won't be shown. Click here to find out more.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.