We’re looking for new maintainers of existing plugins!
This page addresses cases when there is no active maintainer of a plugin:
Adopting plugins marked for adoption. Plugin maintainers can mark plugins for adoption if they do not plan to maintain their plugins anymore. In such case we have a low-barrier process for taking over plugins.
Adopting abandoned plugins.
Sometimes plugin maintainers move on without marking plugins for adoption, due to various reasons.
In such case we can transfer ownership for plugins being hosted within the jenkinsci
GitHub organization.
Such transfer may take a while.
Email the Jenkins Developers mailing list and request to be made a maintainer (which usually means commit access to the plugin repository and being made default assignee for newly reported issues in JIRA). Please provide the following things in the request:
Link to a plugin you want to adopt
Link(s) to pull requests you want to deliver, if applicable
Your GitHub username/id (e.g. oleg-nenashev for https://github.com/oleg-nenashev/)
Your Jenkins infrastructure account id. Create your account if you don’t have one.
For abandoned plugins, you are expected to try and reach out to existing maintainer(s) using a best effort. The typical way to do that is to ping in GitHub and to add her/his/their email addresses in CC (hint: Git commits should have this information). We typically wait for about 2 weeks in normal work periods before proceeding, so please be patient. Hence, if you can prove the existing maintainer already agrees and you explicitly asked about taking over (e.g. in a PR discussion), the process can be faster.
Once granted access, you can file a pull request against Repository Permission updater to be able to deploy snapshots and releases for your plugin. You’re generally expected to start slowly, by filing PRs, and not commit directly. Even more for plugins with a big number of installations for obvious reasons.
No. Jenkins is designed with backward compatibility in mind, so it’s rare that a plugin stops working. And even then there’s often someone who can fix the bug and release a new version even if they wouldn’t be considered a maintainer of the plugin. So if you’re happy with what a plugin is offering, there’s no reason not to use it just because it’s up for adoption.
Check out the list of plugins up for adoption at the bottom of this page. If you see a plugin you like, visit its wiki page as it may contain additional information about the adoption request.
Once you’ve chosen a plugin, review the documentation on plugin maintainership in the Jenkins project. This is especially important if you’re not currently a plugin developer.
First, make sure the plugin is not being actively maintained. Even in actively maintained plugins, there may be periods of lower developer activity. Don’t misinterpret failures to respond to questions or requests as the plugin being unmaintained!
As a new maintainer of a new plugin, you’ll inherit its existing users, so be careful with breaking changes. We value data compatibility highly, so any new releases should remain compatible with previous data and upgrade smoothly. If you need help with this, don’t hesitate to ask other Jenkins developers for help. And if all else fails, you can mark a new version as being incompatible with older releases to warn users before they update.
Before marking a plugin for adoption, we recommend to announce the incoming change in the Jenkins Developer Mailing list or in other appropriate channels. It may help you to find new maintainers and, ideally, to establish a transition and knowledge transfer process.
Add the adopt-this-plugin
label to the plugin. It can be done in 2 ways:
Put an adopt-this-plugin
topic in the plugin’s GitHub repository.
If you have multiple plugins inside a single repository, it will apply to all of them
Add an adopt-this-plugin
label to the plugin entry in the Update Center’s label-definitions.properties file
Optional: If you want to explain why you’re marking that plugin as up for adoption, add a section to the plugin’s documentation. You can also document your vision for the plugin there so that new maintainers can take it into account.
This status is based on the adopt-this-plugin
or jenkins-adopt-this-plugin
label in the update center.
Such labels can come from the topics in the plugin’s GitHub repository or from
the Update Center’s label-definitions.properties file.
If you remove these topics/labels, the adoption notice will disappear after the repo synchronization.