-
Notifications
You must be signed in to change notification settings - Fork 15
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Speed up CI jobs with parallelism and caching (#33)
* Speed up CI jobs with parallelism and caching The zenoh-c build can take nearly four minutes to complete. This change allows zenoh-c and up-cpp to build in parallel and caches zenoh-c's build results (using zenoh-c's HEAD hash as the cache key). When the upstream zenoh-c repo has change (and therefore no valid cache exists), this change saves around 40 seconds of build time by not making up-cpp wait for zenoh-c. When the cache is valid, the zenoh-c build is skipped resulting in a further three minute reduction in total CI run time. * Additional CI speed-ups Adding a cache for up-cpp build artifacts cuts another 30 seconds out of the best-case build times (i.e. when cache is valid). The same technique of checking the HEAD hash for the upstream repo and providing that as the cache key is used here. Whenever HEAD is changed in up-cpp (typically a new PR is merged), the cache is invalidated and up-cpp is rebuilt. Also cuts ~10 seconds out by reusing the caches we already have in the up-client-zenoh-cpp build step. Caches load faster than uploading and downloading additional artifacts. * Capture up-client-zenoh-cpp's tests as artifacts This will allow the tests to be reused in future jobs (checking coverage, running valgrind, producing test reports, etc.)
- Loading branch information
Showing
1 changed file
with
125 additions
and
21 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters