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

Make the UpdateCenter overridable for custom Jenkins WAR packages

    • Icon: New Feature New Feature
    • Resolution: Fixed
    • Icon: Major Major
    • core
    • None
    • jenkins-2.x

      I am working on the custom bundle of Jenkins based on the 2.0 baseline. In this custom bundle I would like to extend the functionality of the default UpdateCenter.

      My use-cases:

      • Ability to extend REST API (new commands for very custom cases)
      • Ability to manage update sites from the code according to the installation settings
      • Ability to alter UpdateCenter UIs and maybe tweak the installation Wizard

      According to the current Jenkins design, it cannot be done via a classic extension point in a plugin, but it can be done in a library. Since UpdateCenter can unlikely provide extension points for our cases, it seems the best way would be to override the UpdateCenter instance.

      I propose to add a system property, which would allow to instantiate Jenkins with a custom UpdateCenter.

          [JENKINS-34733] Make the UpdateCenter overridable for custom Jenkins WAR packages

          Oleg Nenashev created issue -
          Oleg Nenashev made changes -
          Description Original: My team is working on the custom bundle of Jenkins based on the 2.0 baseline. In this custom bundle we would like to extend the functionality of the default UpdateCenter.

          Our use-cases:
          * Ability to extend REST API (new commands for very custom cases)
          * Ability to manage update sites from the code according to the installation settings
          * Ability to alter UpdateCenter UIs and maybe tweak the installation Wizard

          According to the current Jenkins design, it cannot be done via a classic extension point in a plugin, but it can be done in a library. Since UpdateCenter can unlikely provide extension points for our cases, it seems the best way would be to override the UpdateCenter instance.

          I propose to add a system property, which would allow to instantiate Jenkins with a custom UpdateCenter.
          New: I am working on the custom bundle of Jenkins based on the 2.0 baseline. In this custom bundle I would like to extend the functionality of the default UpdateCenter.

          My use-cases:
          * Ability to extend REST API (new commands for very custom cases)
          * Ability to manage update sites from the code according to the installation settings
          * Ability to alter UpdateCenter UIs and maybe tweak the installation Wizard

          According to the current Jenkins design, it cannot be done via a classic extension point in a plugin, but it can be done in a library. Since UpdateCenter can unlikely provide extension points for our cases, it seems the best way would be to override the UpdateCenter instance.

          I propose to add a system property, which would allow to instantiate Jenkins with a custom UpdateCenter.

          Code changed in jenkins
          User: Oleg Nenashev
          Path:
          core/src/main/java/hudson/model/UpdateCenter.java
          core/src/main/java/jenkins/model/Jenkins.java
          test/src/test/java/hudson/model/UpdateCenterCustomTest.java
          http://jenkins-ci.org/commit/jenkins/768da3e241417da47f306ac2e32fbc14c31be8c8
          Log:
          JENKINS-34733 - Allow overriding Jenkins UpdateCenter by a custom implementation (#2332)

          • JENKINS-34733 - Allow overriding Jenkins UpdateCenter by a custom implementation
          • JENKINS-34733 - Reduce the logging level for the custom update center selection
          • [JENKINS-34733 and JENKINS-34674] - Use SystemProperties in the UpdateCenter

          SCM/JIRA link daemon added a comment - Code changed in jenkins User: Oleg Nenashev Path: core/src/main/java/hudson/model/UpdateCenter.java core/src/main/java/jenkins/model/Jenkins.java test/src/test/java/hudson/model/UpdateCenterCustomTest.java http://jenkins-ci.org/commit/jenkins/768da3e241417da47f306ac2e32fbc14c31be8c8 Log: JENKINS-34733 - Allow overriding Jenkins UpdateCenter by a custom implementation (#2332) JENKINS-34733 - Allow overriding Jenkins UpdateCenter by a custom implementation JENKINS-34733 - Reduce the logging level for the custom update center selection [JENKINS-34733 and JENKINS-34674] - Use SystemProperties in the UpdateCenter

          Oleg Nenashev added a comment -

          Released in jenkins-2.4

          Oleg Nenashev added a comment - Released in jenkins-2.4
          Oleg Nenashev made changes -
          Assignee New: Oleg Nenashev [ oleg_nenashev ]
          Oleg Nenashev made changes -
          Resolution New: Fixed [ 1 ]
          Status Original: Open [ 1 ] New: Resolved [ 5 ]
          Oleg Nenashev made changes -
          Status Original: Resolved [ 5 ] New: Closed [ 6 ]
          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 170914 ] New: JNJira + In-Review [ 210019 ]

            oleg_nenashev Oleg Nenashev
            oleg_nenashev Oleg Nenashev
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: