Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-64750

Prompt admin to install plugins which are newly suggested in platform-plugins.json


      Say you build Jenkins with

      diff --git core/src/main/resources/jenkins/install/platform-plugins.json core/src/main/resources/jenkins/install/platform-plugins.json
      index 4347ee0f27..3566901995 100644
      --- core/src/main/resources/jenkins/install/platform-plugins.json
      +++ core/src/main/resources/jenkins/install/platform-plugins.json
      @@ -50,6 +50,7 @@
                   { "name": "github-branch-source", "suggested": true, "added": "2.0" },
                   { "name": "pipeline-github-lib", "suggested": true, "added": "2.0" },
                   { "name": "pipeline-stage-view", "suggested": true, "added": "2.0" },
      +            { "name": "build-token-root", "suggested": true, "added": "2.270" },
                   { "name": "conditional-buildstep" },
                   { "name": "jenkins-multijob-plugin" },
                   { "name": "parameterized-trigger" },

      and run it on a fresh home dir. In the setup wizard, you will be prompted to install build-token-root, as expected.

      Now run 2.263.3 on a fresh home dir. Run through the setup wizard, selecting no plugins to install (mainly because right at the moment the download site is broken for me!), finish setup as usual. Shut down Jenkins. Now start the snapshot build on this same home dir. Nothing happens—no upgrade wizard. You can of course install build-token-root explicitly but you are not prompted to do so.

      It seems that JENKINS-33663 defined this added field but this only ever worked for the value 2.0—the case for someone upgrading from Jenkins 1.x, when there was no setup wizard.

      But of course hardly anyone is going to still be upgrading directly from Jenkins 1.x these days. So UpgradeWizard and associated GUI is basically dead code. Either it should be deleted, or fixed to actually work.

      I have some trouble following the control flow, but it seems that InstallUtil.getDefaultInstallState is just not called after initial setup, because the current state is RUNNING. SetupWizard.getPlatformPluginUpdates() works, it is just not called. Same for UpgradeWizard.updateUpToDate().

            Unassigned Unassigned
            jglick Jesse Glick
            0 Vote for this issue
            3 Start watching this issue