Bump the default ivy bootstrap jar to 2.4.0.

Review Request #2938 - Created Oct. 7, 2015 and submitted

John Sirois
gmalmquist, mateor, nhoward_tw, stuhood, zundel
This has been the stable release for almost a year and pantsbuild/pants
itself needs this version to properly handle the ANDROID_HOME env var
detection it uses in ivysetting.xml.

Previously, the bootstrap was 2.3.0 and the final used by
pantsbuild/pants was 2.4.0 + extras.  For any workspace with a cached
final, the ivysettings.xml would work, but for workspaces w/o an ivy
bootstrapped, the ivysettings.xml would fail.  This change gets
pantsbuild/pants ivysettings.xml working no matter the bootstrap phase.

 src/python/pants/ivy/ivy_subsystem.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

First noted the fact that the linux CI was green:
But the OSX CI was very red:

The 2 biggest differences being linux vs OS X and travis-ci cache vs
none respectively.

On my local machine, before the fix, I was able to reproduce the OS X
CI failure mode by deleting my ivy bootstrap cache:
rm -rf ~/.cache/pants/tools/jvm/ivy/

After the fix I was no longer able to reproduce, all ran smooth through

CI went green here:

John Sirois
Stu Hood
John Sirois
John Sirois
John Sirois
Review request changed

Status: Closed (submitted)

Eric Ayers

We'll have to be careful in our next upgrade of Pants to get this. We're overriding the ivy bootstrap URL to point to our nexus, as not all of our environemnts can reach the internet directly.

  1. Any ivy resolve will fail fast iff you have both of the following in your current setup:
    1. Either the ivy bootstrap jar url or the ivy profile points to ivy < 2.4.0
    2. You have android setup in ivysettings.xml in the way pants does for itself, ie in a way that works for android users and users without ANDROID_HOME defined
    The failure requires both though.
Mateo Rodriguez
Ship It!