Re: Release Readiness : Dependency convergence

Madhu Venugopal

Please add -Pintegrationtests to your versions jenkins job if your project also relies on IT (& re-execute the jenkins job).
We forgot to add it to the controller project before & I added it yesterday.
refer :

Please feel free to edit this document once a project has changed states :

Current status :

1. Affinity, defense4all projects are in red (not started yet)
2. controller, lisp, openflowplugin, snmp4sdn in yellow (to fix / merge gerrit request).
3. openflowjava, ovsdb, opendove, bgpcep, vtn, yangtools in green.


On 1/14/14, 9:00 PM, Madhu Venguopal wrote:

Hi Devs,

We are making good progress with the versions plugin update to the per-project jenkins job.

A quick summary on the progress across projects :

Affinity, bgpcep, defense4all, openflowjava & controller projects needs special attention.


On 1/13/14, 4:57 PM, Madhu Venguopal wrote:
Hi Devs,

Sorry about this lengthy email. Please spend a couple of minutes to go through this. This is EXTREMELY important for the release.

As discussed during the TSC and the feverish work being done to get to the Release Readiness, we are tracking all the activities using :

This email is to take care of following 2 high priority items under "Global Code Cleanup" :
- " Identify all places dependency versions in project pom.xml files are not current for all ODL Dependencies"
- " Update dependency versions in all pom.xml files to current SNAPSHOT version for all ODL Dependencies"

We have a jenkins job that is running on the controller project :
The "versions" plugin in this job will take care most of the work. It will find the LATEST dependency and also automatically submit a gerrit changes.
How cool is that !!! ? : (Example Gerrit submission :

Based on our investigation, we have a simple Action Item for each of the project owners in each project :

All you have to do as a project owner is to copy the above jenkins configuration into your own project and do the necessary modifications based
on your project build needs. The most important maven option of interest :   (-B versions:use-latest-versions -DallowSnapshots=true).
Also observe the execute shell commands which you would need for auto gerrit review.

The goal is to bring down the dependency errors ( to zero
and let the integration project build to succeed.


For the curious ones - more details :

I pushed the Dependency-Convergence enforcer changes to integration branch earlier today :
and this identifies all the dependencies that are not converged. We also have a jenkins job enabled in the integration project that will
run daily once to keep track of these failures :

Failures seen in the first run :

Please look for "Dependency convergence error" text in the above console log and this will give the hint on what are the failures that are currently active
in each of the bundle. The goal is to bring this to 0 failures.

Join { to automatically receive all group messages.