Tools runner and/or shims

Topics: General
Apr 24, 2014 at 10:28 PM
Edited Apr 24, 2014 at 10:29 PM
While I realize that each tools package can use install.ps1 to create a shim to make it easy for the end-user to run the tool (thinking build-time tools mostly here) from a script without hard-coding the version number, it seems that a standard way of doing this would be worthwhile.

This method works but doesn't seem terribly robust and requires a fair amount of work on the side of the developer.

Ideally, NuGet could support a simple way to run the current version of a tool. I'm thinking something like bundle exec from Bundler.

That would be a good first step, but having a convention-based directory to drop shims that make these calls would be even simpler. So I could call:

.\tools\nant.bat, which would call nuget exec NAnt.Portable, which would call .\packages\NAnt.Portable.0.92\NAnt.exe

I realize that Chewie has some of these same goals, but since NuGet package restore already gets us most of the way there, it just seems that this could solve the problem without requiring another tool that either needs to be installed or checked into source control.

I can start hacking on this but I wanted to get some other thoughts before delving into it