[Debian-salsa-ci] Question about artifacts and ccache
Otto Kekäläinen
otto at debian.org
Wed Sep 18 16:15:19 BST 2024
> As I said, this is mainly a matter of clearly specifying the inputs and
> outputs of each step. Zipping up everything in the current working
> directory as an artifact isn't exactly clean in my opinion (assuming
> that's what's happening)
Perhaps the confusing part is the name WORKING_DIR?
Perhaps it should say OUTPUT_DIR to signify the output is intentional?
What goes into artifacts is not any random source code or build
artifacts, only the final .deb packages and build logs intended to be
saved.
> > The ccache speeds up C/C++ heavy projects remarkably (like 10x), we
> > should definitely keep it.
>
> I'm aware of what ccache does (I'm mainly a C/C++ developer/maintainer),
> but could you please point me at actual cases where it gets used in the
> Salsa pipeline? In my head, I see containers as ephemeral; where does
> ccache's cache get cached?
See for example
https://salsa.debian.org/mariadb-team/mariadb-10.5/-/jobs/6293510
where using ccache with hit rate 17% made the build faster.
You can see the cache being downloaded at the beginning of the build
log, and uploaded at the end. This uses the GitLab CI cache features
and depends on runners supporting it.
The cache rate is low due to new upstream version. A repeat build
should be much faster. Testing that now at
https://salsa.debian.org/mariadb-team/mariadb-10.5/-/jobs/6300193 ..
More information about the Debian-salsa-ci
mailing list