What is the plugin health score?
As of October 24th, there is a new tab named Health Score on each plugin page of plugins.jenkins.io.
This new tab provides the plugin’s health score, along with every aspect that contributed to its score. The score is meant to be unbiased and all plugins are evaluated the same way.
Here is what it looks like:
This project started during the Google Summer of Code 2022 and was finished during the Google Summer of Code 2023. We created the Plugin Health Scoring project with and for the Jenkins community.
The purpose of the project is to provide an unbiased score to all plugins. The resulting score is based on data retrieved from each plugin, and this data is analyzed the same way for every plugin.
The scores are based on several data points gathered from each plugin.
We use the
update-center.json to populate the list of plugins and their source code location.
Based on that, we run what we call
probes on each plugin.
The purpose of these probes is strictly to gather data such as:
Is there a
Jenkinsfilewithin the plugin repository?
When was the last commit on the default branch of the repository?
Once the data is gathered, we run a list of scoring processes, which grade all plugins based only on the available data. All plugins are then scored using the same criteria. You can find the list of scoring processes on the Plugin Health Score site and their implementation in the Plugin Health Score repository.
Refer to the Plugin Health Scoring project documentation for further information about the architecture and behavior of the project.
The score of every plugin is fetched when the plugin site is built.
That data is then used to build the
/<plugin-name>/healthscore/ page, using the component
That component can be found in the plugin site repository.
The scores and different categories are dynamic, and are coming directly from the Plugin Health Scoring project.
The scores are not perfect and are just another indicator of the plugin state. We are still working on using more data from the plugin to contribute to the score.
The grading system that generates the score for each plugin is, I believe, subjective. However, it is not written in stone and can, and most likely will, evolve in the future.
If you feel there is something incorrect about a plugin score, this may indicate a false negative. Please raise an issue on the Plugin Health Scoring project if the score does not appear to be accurate.