Details

    • Similar Issues:

      Description

      None of the currently bundled jenkins-module packages actually look like they need to be modules: they do not appear to need to be loaded in the same class loader as jenkins-core.jar, nor to have extensions/services registered early in the startup sequence. As such, they could be made into regular plugins (hpi packaging), and the usual split-plugins.txt registry used to retain compatibility for existing plugins which happen to refer to their classes (InstanceIdentity and SshCommandFactory are the main examples).

      As an aside refiled as JENKINS-57023.

        Attachments

          Issue Links

            Activity

            Hide
            jglick Jesse Glick added a comment -

            It is actually not a large change at all; turned out to be quite straightforward. See the core PR for summary.

            Show
            jglick Jesse Glick added a comment - It is actually not a large change at all; turned out to be quite straightforward. See the core PR for summary.
            Hide
            basil Basil Crow added a comment -

            Or, alternatively, do none of this…?

            I think this is worth doing. Right now, it's more or less impossible for plugins to depend on modules in a sane way (see the discussion in jenkinsci/git-server-plugin#10 to see what I mean). With this change in place, plugins could explicitly depend on the correct version of the "module" (turned plugin) that they need.

            Show
            basil Basil Crow added a comment - Or, alternatively, do none of this…? I think this is worth doing. Right now, it's more or less impossible for plugins to depend on modules in a sane way (see the discussion in jenkinsci/git-server-plugin#10 to see what I mean). With this change in place, plugins could explicitly depend on the correct version of the "module" (turned plugin) that they need.
            Hide
            jglick Jesse Glick added a comment -

            I have a to-do item to write this up a JEP by the way.

            Show
            jglick Jesse Glick added a comment - I have a to-do item to write this up a JEP by the way.
            Hide
            oleg_nenashev Oleg Nenashev added a comment - - edited

            I have created WEBSITE-642 to deuglify the Plugin Site Web UI. Probably you want to convert this task to EPIC Jesse Glick

            Show
            oleg_nenashev Oleg Nenashev added a comment - - edited I have created  WEBSITE-642 to deuglify the Plugin Site Web UI. Probably you want to convert this task to EPIC Jesse Glick
            Hide
            jglick Jesse Glick added a comment -

            Just now realized that the slave installers only work if the inbound agent is launched in “GUI” mode, which is only available when using javaws, which is semi-deprecated and might be dropped altogether if we decline to keep signing remoting.jar. (Anyway they are only useful if the user account launching the agent has administrator privileges to register a service.) So while slave-installer and its four implementations can still be trivially converted to plugins, we may decide to stop bundling them, meaning that we would be down to three detached plugins (instance-identity, ssh-cli-auth, sshd), which might ease some of the objections to this change.

            Show
            jglick Jesse Glick added a comment - Just now realized that the slave installers only work if the inbound agent is launched in “GUI” mode, which is only available when using javaws , which is semi-deprecated and might be dropped altogether if we decline to keep signing remoting.jar . (Anyway they are only useful if the user account launching the agent has administrator privileges to register a service.) So while slave-installer and its four implementations can still be trivially converted to plugins, we may decide to stop bundling them, meaning that we would be down to three detached plugins ( instance-identity , ssh-cli-auth , sshd ), which might ease some of the objections to this change.

              People

              • Assignee:
                jglick Jesse Glick
                Reporter:
                jglick Jesse Glick
              • Votes:
                1 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated: