We use Ivy for dependency management within our office. It resolves our list of dependencies for any of list of projects and does it very well too, to be fair. It also publishes released dependencies back into our shared Ivy repository for future inclusion in other projects.
But… it has a reliance on Java and we see this as a minor drawback that if we could erradicate, that would be fantastic.
So, is there a .Net equivalen of Ivy? I’ve found this website on CodeHaus, which looked SOOO promising, but there’s zero content.
We understand that NuGet can do private repositories, but due to the sheer amount of code that we have in-house, it would be a massive job to convert/migrate to using NuGet to resolve/publish our dependencies in the same way as we do with Ivy.
We’re a .NET shop and we’re using ivy. When we started we tried using ivy via java calls, but switched to calling out to ant so that we could use the built-in ivy tasks directly. We did that because the ivy tasks gave us more options.
Our build scripts are written in nant. Nant then calls out to ant and passes several properties so that it can execute the ivy tasks needed. I’m sure the same thing could be done with MSBuild.
It feels a bit quirky having to call ant from nant, but it works well. Plus, ivy is contained in its own build file doing exactly what it was meant to do (dependency management) and nothing else.