Lock ivy resolution based on the cache directory being used.
Review Request #3529 - Created March 2, 2016 and submitted
|benjyw, jsirois, nhoward_tw, stuhood, zundel|
This strategy uses a cross-process file lock. Since
there are no reentrant uses of ivy execution (nor should
there be), there is no potential for deadlock.
This is less performant than using a separate directory
for resolution reporting than the directory used for
artifact downloading, but no worse if the user is
already configured to use a non-global cache.
All existing ivy tests pass, which exercise both resolution
code paths that this code affects. Jenkins passed on fresh
machines with no ivy errors (a first) with this patched in.