Deprecating or removing a Plugin

Some plugins may be replaced by others or just become irrelevant (e.g. integration with a service which was shut down). We do not recommend deleting source code outright, even a stale or no-longer-relevant code can still be educational. However, we do have a mechanism for deprecating or hiding plugins in the Jenkins update centers. This page describes the process.

Deprecating a plugin

  1. Set a deprecated label for the plugin. It can be done in 2 ways:

    • Put a deprecated topic in the plugin’s GitHub repository. If you have multiple plugins inside a single repository, it will apply to all of them

    • Add a deprecated label to the plugin entry in the Update Center’s file

  2. Update the plugin’s documentation to explain the reason of the deprecation

  3. Release the plugin and put the deprecation notice into the changelog

Removing a plugin from Update Centers

  1. Deprecate the plugin as documented above

  2. Submit a pull request to the Update Center’s file

  3. Archive the plugin’s repository

    • If you have admin permissions in the repository, it is possible to do it from the GitHub’s web interface

    • Otherwise, create a help desk ticket to archive the plugin’s repository

Reverting deprecation/removal

If required, it is possible to revert all the actions above. A Jenkins Jira ticket is required to unarchive a plugin, but the rest can be done via pull requests to the respective update center files mentioned above.