|
I have many jobs that use the same set of git repos and/or submodules.
I'm using the reference repo feature of the git plugin to conserve space, but this still requires some bootstrapping on each node where I want to use the repo.
What I'm imagining is a mode of operation where there's a top level mirror clone for each node and repo at the start of a job by default.
Example:
Let's say I have a git repo like:
[email protected]:fooproject/foo.git
That has submodules:
[email protected]:/path/to/foosub1.git
[email protected]:myproj/foosub2.git
What I'd want is on the node when the job first runs, it does a mirror clone for each component to an encoded directory:
$JENKINS_HOME/gitrepos/[email protected]:fooproject%foo.git
$JENKINS_HOME/gitrepos/[email protected]:%path%to%foosub1.git
$JENKINS_HOME/gitrepos/[email protected]:myproj%foosub2.git
When the job runs it would check first for a matching spec under gitrepos, and use that as a reference both for submodules and the main repo as necessary, eliminating the need to manually clone and set a reference repo.
For some users this could be a big savings of time/space.
|