Date
Attendees
- Christophe Closset
- Brian Freeman
- Ed Warnicke
- Jack Morgan
- Kenny Paul
- David McBride
- user-20f1f
- Thanh Ha (zxiiro)
- Vratko Polak
- Jacob Smith
- Edward Vielmetti
- Ed Kern
Minutes
- Discussed about moving parts of the build chain and cost aspects, potential benefits, Jenkins VS new tools.
- Need to document thought process, assess opportunities for savings, need data to be able to compare.
Discussion items
Time | Item | Who | Notes |
---|---|---|---|
OPNFV CI | David McBride | Has implications for OVP.
|
Action items
- user-20f1f look into paying for a circleci plan for a POC
- Ed Warnicke provide user-20f1f with information required for circleci and broker introductions
- Christophe Closset onboard a project to circleci for testing a POC
- @ Ed Vielmetti provide information on gitlabci to Phil
- user-20f1f ook into paying for a gitlabci plan for a POC
- Casey Cain Follow up on:
- Need to get estimate of "build minutes" by category to understand potential costs for "AsAService" costs to compare. category we think is gerrit, jenkins, nexus
- Need estimate of current costs for VM based gerrit/jenkins/nexus tool chain
1 Comment
Christophe Closset
Competed a couple of build times comparison on Circle CI VS Jenkins for ONAP as a POC:
Small maven project : ONAP CLAMP
avg merge job build time on LF current infra (Jenkins + vexhost) : ~6m 30
avg merge job build time on circle CI : ~ 4m 40
Medium size maven project (multi module build, some with long lasting tests) ONAP SO
avg merge job build time on LF current infra (Jenkins + vexhost) : ~46min
avg merge job build time on circle CI : ~ 29min
ONAP SO per module build comparison (including tests)
So clearly, my experience is that circle CI builds are ~ 20% - 40% faster
Note : I think we can improve even further by using maven cache (i did not complete the setup) and tight integration of artifacts repos like packagecloud
I also had to use VMs rather than docker, as my build was getting killed (probably memory limit reached on the container build), so it may require further investigation to try out to use container base builds, re engineer some of the jobs to use parallelism etc...
In both cases, it tool me a few hours to 'migrate' the build into the new tool, again I did not re engineer the build, just tried to make it work as is to get a basis for comparison
my circleci project :
https://circleci.com/gh/ChrisC-att
ONAP Build minutes
I was also able to find some ONAP metrics on bitergia about overall build time, if I use the following dashboard (getting overall number of builds in 1year and computed avg build time)
roughly 3millions build minutes in one year (not sure early 2018 build metrics are complete so I've rounded up a bit), we probably have between 10-20 concurrent builds at one time (we may have to split daily builds over a couple of hours to stay below 20)