[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC PATCH 5/5] gitlab-ci.d/crossbuilds.yml: Enable compilation with
Re: [RFC PATCH 5/5] gitlab-ci.d/crossbuilds.yml: Enable compilation with ccache
Wed, 14 Apr 2021 12:35:41 +0200
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1
On 4/14/21 12:29 PM, Philippe Mathieu-Daudé wrote:
> 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 <email@example.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 @@
>> + 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
> 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:
Actually found the doc for the last 2:
All your CI/CD jobs run on n1-standard-1 instances with 3.75GB of RAM,
CoreOS and the latest Docker Engine installed. Instances provide 1 vCPU
and 25GB of HDD disk space. The default region of the VMs is US East1.
Each instance is used only for one job, this ensures any sensitive data
left on the system can’t be accessed by other people their CI jobs.
The gitlab-shared-runners-manager-X.gitlab.com fleet of runners are
dedicated for GitLab projects as well as community forks of them. They
use a slightly larger machine type (n1-standard-2) and have a bigger SSD
disk size. They don’t run untagged jobs and unlike the general fleet of
shared runners, the instances are re-used up to 40 times.
- [RFC PATCH 0/5] Use ccache in the gitlab-CI, Thomas Huth, 2021/04/14
- [RFC PATCH 1/5] tests/docker/dockerfiles: Add ccache to containers where it was missing, Thomas Huth, 2021/04/14
- [RFC PATCH 2/5] tests/docker/dockerfiles/ubuntu2004: Add missing symlink for cc, Thomas Huth, 2021/04/14
- [RFC PATCH 3/5] gitlab-ci.d/crossbuilds: Limit the amount of targets in the cross-win64 build, Thomas Huth, 2021/04/14
- [RFC PATCH 4/5] gitlab-ci.yml: Compile with ccache enabled, Thomas Huth, 2021/04/14
- [RFC PATCH 5/5] gitlab-ci.d/crossbuilds.yml: Enable compilation with ccache, Thomas Huth, 2021/04/14
- Re: [RFC PATCH 0/5] Use ccache in the gitlab-CI, Stefan Hajnoczi, 2021/04/14