[FIXED JENKINS-45235] When multiple update sites publish different versions, allow those versions to be seen

- When automatically installing dependent plugins, the first update center with a version meeting the minimum required will win
- Also enhances the CLI command to allow specification of a minimum version
This commit is contained in:
Stephen Connolly committed 2018-01-26 11:32:36 +00:00
1 parent 0d1f80ba9f
commit 884e95e0fa
7 files changed
+80 -18

No files matched your search

+2 -2
View File
@@ -1700,7 +1700,7 @@ public abstract class PluginManager extends AbstractModelObject implements OnMas
for (Map.Entry<String,VersionNumber> requestedPlugin : parseRequestedPlugins(configXml).entrySet()) {
PluginWrapper pw = getPlugin(requestedPlugin.getKey());
if (pw == null) { // install new
UpdateSite.Plugin toInstall = uc.getPlugin(requestedPlugin.getKey());
UpdateSite.Plugin toInstall = uc.getPlugin(requestedPlugin.getKey(), requestedPlugin.getValue());
if (toInstall == null) {
LOGGER.log(WARNING, "No such plugin {0} to install", requestedPlugin.getKey());
continue;
@@ -1713,7 +1713,7 @@ public abstract class PluginManager extends AbstractModelObject implements OnMas
}
jobs.add(toInstall.deploy(true));
} else if (pw.isOlderThan(requestedPlugin.getValue())) { // upgrade
UpdateSite.Plugin toInstall = uc.getPlugin(requestedPlugin.getKey());
UpdateSite.Plugin toInstall = uc.getPlugin(requestedPlugin.getKey(), requestedPlugin.getValue());
if (toInstall == null) {
LOGGER.log(WARNING, "No such plugin {0} to upgrade", requestedPlugin.getKey());
continue;