On 4/14/21 10:19 AM, Thomas Huth wrote: > Ccache can speed up the compilation in some cases, so enable it for > our cross-compilation CI builds, too. > > Signed-off-by: Thomas Huth <th...@redhat.com> > --- > .gitlab-ci.d/crossbuilds.yml | 28 ++++++++++++++++++++++++++++ > 1 file changed, 28 insertions(+) > > diff --git a/.gitlab-ci.d/crossbuilds.yml b/.gitlab-ci.d/crossbuilds.yml > index 017731a894..dee327a936 100644 > --- a/.gitlab-ci.d/crossbuilds.yml > +++ b/.gitlab-ci.d/crossbuilds.yml > @@ -1,4 +1,26 @@ > + > +.ccache_cross_setup: > + cache: > + key: "$CI_JOB_NAME" > + paths: > + - ccache
I discovered last month the cache/artifact passing feature is useful when all runners are in the same premises, but when you used runner in different locations it become slower (except if all your runners are in very fast clouds probably). Not a short term problem, but can hit us long term. I haven't looked if GitLab already figured how to manage this globally, like registering runners with affinity, or assigning them to pools. If we decide to stick with the free-tier runners, then this is a great improvement. For custom runners, a simple kludge is to assert they do *not* use cache/artifacts (from free-tier runners). We could restrict this to free-tier runners but these runners tag aren't standardized, and AFAIK we can not (yet?) use the "ANY" word to "select runners with any of this tag list". So far I noticed gitlab uses these: - shared docker - gce docker - gitlab-org - gitlab-org-docker The last 2 are recent, and seem to help with the problem I reported that some runners don't have Docker installed: https://lists.gnu.org/archive/html/qemu-devel/2021-04/msg02213.html Regards, Phil.