I have a custom build-process that uses a combination of NAnt, Maven Ivy, CruiseControl.Net and a few others to manage the dependencies and handle the continuous integration build process for our projects. And it works great, in all honesty.
One relatively important part in-particular for us, is the ability for us to get an exact version of any given dependency (.dll, .xml. .whatever) from our shared Ivy repository is absolutely paramount to our work, due to different applications requiring different versions of a particular library for different reasons/purposes.
However - I am currently looking into Visual Studio Team Services (http://visualstudio.com) and am experimenting my way along the code check-in/auto-build process, except I cannot see where or how I manage my external/third-party dependencies.
Using Maven's Ivy dependency management/configuration tool, the process is pretty-much flawless and have so much faith in it - what is the Team Services equivalent to this?
My best findings online after hours of searching seems to suggest the NuGet be used for this, and make custom packages for each of my dependencies, but then where/how are these stored and accessed by the Team Services continuous integration build process? Can I store my packages in a NuGet server within Azure? Can I be sure that this is used only by myself?
The best SO posts that I've found so far are:
- Dependency Management/Team Projects in Team Foundation Server 2010
- Dependency management with TFS 2010
...but these still leave me unanswered and maybe I am right off track with this, but need to understand the dependency management process that TFS will follow.