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

Available plugins list is empty

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Open (View Workflow)
    • Priority: Minor
    • Resolution: Unresolved
    • Component/s: core
    • Labels:
    • Environment:
      Open JDK 1.8.0_252
      Ubuntu 18.04.4
      Jenkins 2.235.2
    • Similar Issues:

      Description

      Available plugins list is empty.

      Installed plugins is visible and plugin update works fine.

       

      In jenkins.log it has following:

      2020-07-18 04:49:04.420+0000 [id=380] INFO h.m.DownloadService$Downloadable#load: Obtained the updated data file for hudson.tasks.Maven.MavenInstaller
      2020-07-18 04:49:05.169+0000 [id=380] INFO h.m.DownloadService$Downloadable#load: Obtained the updated data file for hudson.tasks.Ant.AntInstaller
      2020-07-18 04:49:06.420+0000 [id=380] INFO h.m.DownloadService$Downloadable#load: Obtained the updated data file for hudson.plugins.gradle.GradleInstaller
      2020-07-18 04:49:07.714+0000 [id=380] INFO h.m.DownloadService$Downloadable#load: Obtained the updated data file for hudson.plugins.nodejs.tools.NodeJSInstaller
      2020-07-18 04:49:09.976+0000 [id=380] INFO h.m.DownloadService$Downloadable#load: Obtained the updated data file for hudson.tools.JDKInstaller
      2020-07-18 04:49:09.976+0000 [id=380] INFO hudson.util.Retrier#start: Performed the action check updates server successfully at the attempt #1

        Attachments

          Issue Links

            Activity

            Hide
            danielbeck Daniel Beck added a comment - - edited

            There is no obvious wildcard method to see all available plugins.

            Type any 2+ character substring of plugins.jenkins.io. Not an "official" workaround, but works based on how the matching is currently implemented.

            Apply the same logic to the other tabs and see how bad an idea this actually is.

            The reason I did that is that the other tabs show something different; plugins you have installed. "Available" shows plugins you don't have installed. It's the difference between Springboard/home screen and App Store.

            While there's clearly still a discovery problem, simply continuing to list everything there is, which might have been reasonable when there were 200 plugins, just isn't useful with almost 2000.

            Show
            danielbeck Daniel Beck added a comment - - edited There is no obvious wildcard method to see all available plugins. Type any 2+ character substring of plugins.jenkins.io . Not an "official" workaround, but works based on how the matching is currently implemented. Apply the same logic to the other tabs and see how bad an idea this actually is. The reason I did that is that the other tabs show something different; plugins you have installed. "Available" shows plugins you don't have installed. It's the difference between Springboard/home screen and App Store. While there's clearly still a discovery problem, simply continuing to list everything there is, which might have been reasonable when there were 200 plugins, just isn't useful with almost 2000.
            Hide
            ianw Ian Williams added a comment -

            I think this change has made for a rather poor user experience.

            Upon loading the page, the Available tab body displays "Plugin list is loading ...". When "done", instead of seeing the populated table it displays " Use the search field above to search for available plugins."

            But experienced users are used to seeing a full list of plugins and react as OP did - "Hey something is missing!"

            New users will have no idea what to search for. Even experienced users could be confused. Must you search by name, labels (what are the labels, where is the list ?), does it match descriptor ... ?

             

            A user cannot be expected to scroll down the release notes (further w/every release) and find the reflected notes

            "  It no longer shows all available plugins by default; use search field to find plugins. They are now sorted by popularity by default."

            provides little guidance without reading the PRs and issues; most people don't even scroll the LTS notes!

            The Managing Plugins Documentation page is not updated to reflect the new UI either.

             

            Some suggestions:

            • Provide a help icon beside the search box with a detailed search explanation (Similar as on other pages (configure, job, etc.))
            • Documentation - Update the Managing Plugins page to reflect new usage pattern. Installation page could be cleaned up too.
            • Provide pre-filled guidance in the Search box - "Start typing to match names or labels ( wildcard"*" or "%")" that disappears when you focus tor type the box.
            • Given the plugin list is already loaded just not displayed, provide a radio button " ( o ) Show all plugins " option
            • Make the Search field dual purpose; add a drop-down list of labels to choose from
            Show
            ianw Ian Williams added a comment - I think this change has made for a rather poor user experience. Upon loading the page, the Available tab body displays "Plugin list is loading ...". When "done", instead of seeing the populated table it displays " Use the search field above to search for available plugins." But experienced users are used to seeing a full list of plugins and react as OP did - "Hey something is missing!" New users will have no idea what to search for. Even experienced users could be confused. Must you search by name, labels (what are the labels, where is the list ?), does it match descriptor ... ?   A user cannot be expected to scroll down the release notes (further w/every release) and find the reflected notes "  It no longer shows all available plugins by default; use search field to find plugins. They are now sorted by popularity by default." provides little guidance without reading the PRs and issues; most people don't even scroll the LTS notes! The Managing Plugins Documentation page is not updated to reflect the new UI either.   Some suggestions: Provide a help icon beside the search box with a detailed search explanation (Similar as on other pages (configure, job, etc.)) Documentation - Update the Managing Plugins page to reflect new usage pattern. Installation page could be cleaned up too. Provide pre-filled guidance in the Search box - "Start typing to match names or labels ( wildcard"*" or "%")" that disappears when you focus tor type the box. Given the plugin list is already loaded just not displayed, provide a radio button " ( o ) Show all plugins " option Make the Search field dual purpose; add a drop-down list of labels to choose from
            Hide
            ianw Ian Williams added a comment -

            One other visual indicator might be to show a dynamic total in the tab itself of the total # of plugins matching the search criteria over / the total available.

            Installed and Updates tab can show respective totals as well

            Show
            ianw Ian Williams added a comment - One other visual indicator might be to show a dynamic total in the tab itself of the total # of plugins matching the search criteria over / the total available. Installed and Updates tab can show respective totals as well
            Hide
            borisivan boris ivan added a comment -

            Daniel Beck regarding "While there's clearly still a discovery problem, simply continuing to list everything there is, which might have been reasonable when there were 200 plugins, just isn't useful with almost 2000."

            For scenarios like this, I think changing the default behavior to not show everything is fine. But there should be a non default behavior available that still allows one to see all the plugins, like a 'show all' button or something. Requiring the user to know what to search for is a bad user experience.

            Show
            borisivan boris ivan added a comment - Daniel Beck regarding "While there's clearly still a discovery problem, simply continuing to list everything there is, which might have been reasonable when there were 200 plugins, just isn't useful with almost 2000." For scenarios like this, I think changing the default behavior to not show everything is fine. But there should be a non default behavior available that still allows one to see all the plugins, like a 'show all' button or something. Requiring the user to know what to search for is a bad user experience.
            Hide
            tonny Tonny added a comment - - edited

            How to fix "Unable to find plugins in list of available plugins in jenkins" issue steps:

            Following
            https://github.com/jenkinsci/jenkins/pull/4580/files/b9e4d4c0a80ede667f387d43dc71e4d8b004e0a3
            We know the core of issue here:
            <local:table page="available" list="${app.updateCenter.availables}" filtered="true" xmlns:local="/hudson/PluginManager" />
            So we need modify the code with:
            <local:table page="available" list="${app.updateCenter.availables}" filtered="false" xmlns:local="/hudson/PluginManager" />

            Exmaple (2.235.5 as example)(the tag comes from https://github.com/jenkinsci/jenkins/releases?after=jenkins-2.241)
            1. Download Jenkins codes
            mkdir D:\Code\jenkins_compile
            cd /d D:\Code\jenkins_compile
            git clone https://github.com/jenkinsci/jenkins.git
            cd jenkins
            git reset --hard
            git status
            git checkout jenkins-2.235
            git status

            2. Modify core\src\main\resources\hudson\PluginManager\available.jelly
            before
            <local:table page="available" list="${app.updateCenter.availables}" filtered="true" xmlns:local="/hudson/PluginManager" />
            after
            <local:table page="available" list="${app.updateCenter.availables}" filtered="false" xmlns:local="/hudson/PluginManager" />

            3. Compile Jenkins codes
            cd /d D:\Code\jenkins_compile\jenkins
            mvn clean
            mvn -Dmaven.test.skip=true install
            cd /d D:\Code\jenkins_compile\jenkins\war\target
            explorer .

            we will get jenkins.war file.

            4. Re-Deploy the jenkins.war

            5. The available plugins list will be shown.

            You are welcome!
            My Email: happy.every.day@126.com
            2021.03.31

            PS:

            jenkins-2.263.4 is also ok.

            git checkout jenkins-2.263.4

            Show
            tonny Tonny added a comment - - edited How to fix "Unable to find plugins in list of available plugins in jenkins" issue steps: Following https://github.com/jenkinsci/jenkins/pull/4580/files/b9e4d4c0a80ede667f387d43dc71e4d8b004e0a3 We know the core of issue here: <local:table page="available" list="${app.updateCenter.availables}" filtered="true" xmlns:local="/hudson/PluginManager" /> So we need modify the code with: <local:table page="available" list="${app.updateCenter.availables}" filtered="false" xmlns:local="/hudson/PluginManager" /> Exmaple (2.235.5 as example)(the tag comes from https://github.com/jenkinsci/jenkins/releases?after=jenkins-2.241 ) 1. Download Jenkins codes mkdir D:\Code\jenkins_compile cd /d D:\Code\jenkins_compile git clone https://github.com/jenkinsci/jenkins.git cd jenkins git reset --hard git status git checkout jenkins-2.235 git status 2. Modify core\src\main\resources\hudson\PluginManager\available.jelly before <local:table page="available" list="${app.updateCenter.availables}" filtered="true" xmlns:local="/hudson/PluginManager" /> after <local:table page="available" list="${app.updateCenter.availables}" filtered="false" xmlns:local="/hudson/PluginManager" /> 3. Compile Jenkins codes cd /d D:\Code\jenkins_compile\jenkins mvn clean mvn -Dmaven.test.skip=true install cd /d D:\Code\jenkins_compile\jenkins\war\target explorer . we will get jenkins.war file. 4. Re-Deploy the jenkins.war 5. The available plugins list will be shown. You are welcome! My Email: happy.every.day@126.com 2021.03.31 PS: jenkins-2.263.4 is also ok. git checkout jenkins-2.263.4

              People

              Assignee:
              Unassigned Unassigned
              Reporter:
              digz6666 Batbayar Bazarragchaa
              Votes:
              4 Vote for this issue
              Watchers:
              9 Start watching this issue

                Dates

                Created:
                Updated: