This project contains a series of Rewrite recipes and visitors to automatically upgrade and migrate Jenkins plugins.
Jenkins is a fast-moving project that recommends plugins update quarterly. As Jenkins evolves, functionality is regularly factored out from core into plugins. Implicit dependencies are added to plugins based on the version of Jenkins they depend on to retain backwards compatibility. By regularly marching plugins forward, we can drop these dependencies when unnecessary, making our deployments smaller and simpler.
Additionally, depending on newer versions of Jenkins allows our builds to pick up deprecations. These deprecations can often be migrated with new OpenRewrite recipes. Proactively handling deprecations in the plugins we depend on allows us to avoid runtime issues if and when the deprecated code is removed.
Running Rewrite on a Maven project without modifying the build is very helpful for getting started.
To run the org.openrewrite.jenkins.github.AddTeamToCodeowners
recipe:
$ mvn -U org.openrewrite.maven:rewrite-maven-plugin:run \
-Drewrite.recipeArtifactCoordinates=org.openrewrite.recipe:rewrite-jenkins:RELEASE \
-Drewrite.activeRecipes=org.openrewrite.jenkins.github.AddTeamToCodeowners
See the full documentation at docs.openrewrite.org.
We appreciate all types of contributions. See the contributing guide for detailed instructions on how to get started.