Hi,
some weeks a go the topic about using dependency-artifacts to speed up gerrit verifications was mentioned by Neels in the "RFC: jenkins pipeline" thread [1].
I was curious and wrote a bash script (osmo-artifacts.sh) [2], which enables build jobs to archive and fetch dependencies. Instead of Docker it simply uses archives to store them. An artifact's name has the following form:
( n(${project}.${branch}.${shortRev}_) ).tar.gz
Openbsc builds are 50 % faster when using artifacts. [3]
The jenkins.sh [2] script had to be slightly modified i.e. basically split into two functions:
1) buildProjectDeps() 2) buildProject()
A third function to generate the artifact name has been added. The template.sh [2] script illustrates this description.
What do you think about the result/artifactStore/approach in general?
A cleanUpArtifactStore.sh script running as a cron job is already on my mind, but imo it's a good point to discuss the intermediate result.
blobb
[1] http://lists.osmocom.org/pipermail/openbsc/2017-March/010400.html [2] git clone https://github.com/blobbsen/diy-artifacts.git [3] https://jenkins.blobb.me/job/openBSC_multi-configuration_withArtifacts_testR...