From f0cbe387d5521ecc33b81fef13b09bbbc67edc0e Mon Sep 17 00:00:00 2001 From: Mark Waite Date: Sat, 7 Jan 2023 08:53:47 -0700 Subject: [PATCH] [JENKINS-70301] Do not report implied dependencies for WMI Windows Agents plugin (#7568) * Hide split of windows-slaves from other plugins https://issues.jenkins.io/browse/JENKINS-70301 notes that the WMI Windows Agents plugin (id:windows-slaves) was split from core in 1.547 and is now deprecated. Because it is deprecated, users want to remove it. They cannot remove it if they have plugins installed that depend on a Jenkins version prior to 1.547. Only two plugins actually depend of any classes from the WMI Windows Agent plugin. * cli-extras-plugin - never released, no tags, no install history * multi-slave-config - already requires windows-slaves plugin explicitly and already requires a Jenkins core version newer than 1.547. 1340 installations, last released 8 years ago Rather than require updates of all the plugins that require a Jenkins version less than 1.547, this removes the windows-slaves plugin from the split plugins list. Users will not be warned that their plugin might have a dependency on windows-slaves because the analysis has confirmed that there is only 1 delivered plugin with that dependency, and it is an explicitly declared dependency with a newer Jenkins minimum version than the version from which the WMI Windows Agents plugion was split. Testing done * Installed suggested plugins from wizard and confirmed WMI Windows Agents plugin is not installed * Installed slave-setup plugin (has implied WMI Windows Agents plugin dependency) and confirmed that WMI Windows Agents plugin is not installed * Installed multi-slave-setup plugin (has explicit WMI Windows Agents plugin dependency) and confirmed that WMI Windows Agents plugin was installed as a dependency * Remove multi-slave-setup plugin and WMI Windows Agents plugin and confirmed that Jenkins reported no errors or issues * Installed five plugins with old base versions and confirmed that WMI Windows Agents plugin was not installed. The five plugins included backup-plugin, cloudbees-credentials-plugin, unity3d-plugin, groovy-label-assignment-plugin, and maven-deployment-linker plugin. * Performed a backup with the backup plugin and confirmed that it was well behaved https://docs.google.com/spreadsheets/d/1KDIJIu41rIRlj6PjzyhAY9vazKmd3PVwqM3_-32Lt-o/edit?usp=sharing lists the plugins that have an implied dependency on the WMI Windows Agents plugin. * Remove windows-slaves from war file No need to bundle a detached plugin that has no consumers of its API that are based on a Jenkins version before the plugin was split from core. https://github.com/jenkinsci/jenkins/pull/7568#pullrequestreview-1238137930 detected that the bundling was left in by the original commit. --- core/src/main/resources/jenkins/split-plugin-cycles.txt | 3 --- core/src/main/resources/jenkins/split-plugins.txt | 1 - war/pom.xml | 7 ------- 3 files changed, 11 deletions(-) diff --git a/core/src/main/resources/jenkins/split-plugin-cycles.txt b/core/src/main/resources/jenkins/split-plugin-cycles.txt index 5fbea9ed30f2..d9811d8d6bba 100644 --- a/core/src/main/resources/jenkins/split-plugin-cycles.txt +++ b/core/src/main/resources/jenkins/split-plugin-cycles.txt @@ -2,14 +2,12 @@ # JENKINS-28942 could make this obsolete. credentials matrix-auth -credentials windows-slaves script-security antisamy-markup-formatter script-security bouncycastle-api script-security command-launcher script-security matrix-auth script-security matrix-project -script-security windows-slaves # Weird unexpected cycle that showed up during testing of this new plugin # so breaking all potential cycles until JENKINS-28942 @@ -25,7 +23,6 @@ ldap jaxb pam-auth jaxb mailer jaxb matrix-auth jaxb -windows-slaves jaxb antisamy-markup-formatter jaxb matrix-project jaxb junit jaxb diff --git a/core/src/main/resources/jenkins/split-plugins.txt b/core/src/main/resources/jenkins/split-plugins.txt index 83688518c7c9..adc3e2c18bdc 100644 --- a/core/src/main/resources/jenkins/split-plugins.txt +++ b/core/src/main/resources/jenkins/split-plugins.txt @@ -16,7 +16,6 @@ ldap 1.467 1.0 pam-auth 1.467 1.0 mailer 1.493 1.2 matrix-auth 1.535 1.0.2 -windows-slaves 1.547 1.0 antisamy-markup-formatter 1.553 1.0 matrix-project 1.561 1.0 junit 1.577 1.0 diff --git a/war/pom.xml b/war/pom.xml index 976e8ca27dc2..a70cca90e55c 100644 --- a/war/pom.xml +++ b/war/pom.xml @@ -305,13 +305,6 @@ THE SOFTWARE. 3.1.5 hpi - - - org.jenkins-ci.plugins - windows-slaves - 1.8.1 - hpi - org.jenkins-ci.plugins