Dear Jenkins Community,

Hey everyone, my name is Raunak Madan, I am contributing to the project 
named “Improving Plugin Modernizer” for GSoC 2025. 

Current Plugin Modernizer Tool:
Plugin Modernizer <https://github.com/jenkins-infra/plugin-modernizer-tool> 
is a generic CLI tool designed to automate the modernization of Jenkins 
plugins to keep them updated. It utilizes OpenRewrite recipes to apply 
transformations to the plugin, validating the applied transformations and 
creating pull requests with the results. The CLI is also used to collect 
metadata from Jenkins plugins, such as Jenkins version, parent POM, BOM 
version, JDK used for building the plugin, etc.

Why is This Tool Important?

With over 2000+ plugins in Jenkins, keeping them updated manually is a 
daunting task. The Plugin Modernizer Tool automates much of this work, 
ensuring:

   - 
   
   Plugins stay up to date with modern Jenkins practices.
   - 
   
   Compatibility with the latest Java and Jenkins versions.
   - 
   
   Reduced technical debt for plugin maintainers.
   

Improving the Plugin Modernizer Tool:

   - 
   
   Store metadata about the modernization process on the Jenkins reports 
   site <https://reports.jenkins.io/> or on an open-source repository for 
   now.
   - 
   
   Making REST API endpoints to access the modernization metadata.
   - 
   
   Automate Running Recipes on Plugins with Low Health Scores.
   - 
   
   Visualizing the metadata on the Jenkins Statistics Site.
   - 
   
   Implementing more recipes that help in the modernization of plugins.
   

By storing the modernization metadata like “what recipes have been applied 
to a plugin, was the modernization successful, what changes have been made, 
etc” to a remote storage and providing APIs to access the metadata will 
help to get modernization insights and helps to measure the impact of this 
tool in the Jenkins ecosystem.

By automating running recipes based on low health scores would save time 
when running the same transformations manually using the tool as the tool 
would automatically be able to detect which recipe to run on a plugin 
according to its corresponding failing probes.

Last but not the least we would be visualizing the modernization metadata 
on Jenkins Statistics Site <https://stats.jenkins.io/> that will display:

   - 
   
   Total Modernized Plugins count
   - 
   
   Failing Recipes for each plugin
   - 
   
   Most Applied OpenRewrite Recipes
   - 
   
   Estimated Technical Debt Reduction
   

I would be grateful for any insights or feedback from the community 
regarding the tool.
Thank You for your time and consideration. Let’s create an impact together.

Best Regards,
Raunak Madan

GSoC ‘25 Jenkins Contributor 










-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to jenkinsci-dev+unsubscr...@googlegroups.com.
To view this discussion visit 
https://groups.google.com/d/msgid/jenkinsci-dev/a466733a-613b-46ca-a494-51ed0d8d1b9an%40googlegroups.com.

Reply via email to