/**
* Performs an installation.
*/
private int install(ToolInstallation t, BuildIDs id, AbstractProject p) throws IOException, InterruptedException {
Run b = p.getBuildByNumber(Integer.parseInt(id.number));
if (b==null)
throw new AbortException("No such build: "+id.number);
Executor exec = b.getExecutor();
if (exec==null)
throw new AbortException(b.getFullDisplayName()+" is not building");
Node node = exec.getOwner().getNode();
t = t.translate(node, EnvVars.getRemote(checkChannel()), new StreamTaskListener(stderr));
stdout.println(t.getHome());