in powershell-agent/src/main/java/jetbrains/buildServer/powershell/agent/PowerShellInfoProvider.java [109:133]
private void registerDetectedPowerShells(RegistryPowerShellDetector registryPowerShellDetector,
CommandLinePowerShellDetector commandLinePowerShellDetector,
Map<String, String> parameters) {
Map<String, PowerShellInfo> shellsFromReg = SystemInfo.isWindows
? registryPowerShellDetector.findShells()
: Collections.emptyMap();
Map<String, PowerShellInfo> shellsFromCmd = commandLinePowerShellDetector.findShells(shellsFromReg.keySet());
Map<String, PowerShellInfo> shells = new HashMap<>(shellsFromReg);
shells.putAll(shellsFromCmd);
for (Map.Entry<String, PowerShellInfo> entry : shells.entrySet()) {
if (!myHolder.getShells().containsKey(entry.getKey())) {
entry.getValue().saveInfo(parameters);
myHolder.addShellInfo(entry.getKey(), entry.getValue());
}
}
// provide parameters for agent compatibility filters
if (!myHolder.getShells().isEmpty()) {
provideMaxVersions(parameters);
provideCompatibilityParams(parameters);
} else {
LOG.info("No PowerShell detected. If it is installed in non-standard location, " +
"please provide install locations in teamcity.powershell.detector.search.paths " +
"agent property (with ';' as a separator)");
}
}