I've implemented this enhancement on version 1.0.2 of the CC plugin (cf. the attached clearcase-1.0.2-bib.zip file). I've done the following:
- Created a new ClearCaseInstallation class which aims at describing the global config for the plugin (it extends ToolInstallation to allow overriding the home folder on slave nodes).
- For backward compatibility, this class still delegates some of its parameters (merge time window) to the descriptor of ClearCaseSCM.
- ClearCaseSCM.ClearCaseScmDescriptor.doVersion() has had to be dropped.
- ClearCaseSCM.ClearCaseScmDescriptor.getCleartoolExe() has been rewritten to delegate to ClearCaseInstallation.getCleartoolExe().
- I've dropped ClearCaseSCM/global.jelly and moved some parts of it to ClearCaseInstallation/global.jelly.
- There has been a very few other changes on other classes.
==> The plugin works fine on a mixed Windows/Linux environment, with CC not being in the PATH (which is the case in my company and unfortunately I can't change that). This allow the plugin configuration to be 100% compatible but it's not a good design, I think this part of the plugin should be redesigned. If you wish, I can provide you with a fix for the latest version of the plugin (which would be incompatible with earlier versions).
NB: It's compiled against 1.312, so I've had to drop two methods using BuildStepMonitor.