Hi Jenkins gurus,

I have a load of jobs (50+ I think) which clone the same repository, but
different branches,  to build/unit/test/functional test stages.

Also, it's a special application of the "job splitting pattern" (
https://wiki.jenkins-ci.org/display/JENKINS/Splitting+a+big+job+into+smaller+jobs
):
the tarball that downstream jobs receive is a much smaller than the entire
workspace: it only contains unknown files(git ls-files -oz: the build
artifacts), which is "just" 400m
vs 1.8G. Downstream jobs unpack this on top of a pristine clone to get up
to speed. This is quite fast (most files are there already) and also seems
to do better change tracking.

However it costs space - each of the workspace is ~ 4-5G - half of which is
the git clone.
While git has a good reason to clone everything with all the branches, I
don't need that duplicated 50 times on the Jenkins box.
So am wondering if there is a way to optimise this?
I guess, i'd rather have one single full clone, and let jobs have the work
directories (+index?)..

Any enlightments/alternative ideas are appreciated.
thanks,
Gergo

Reply via email to