-
Notifications
You must be signed in to change notification settings - Fork 70
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update Parent POM to 5.6 and Jenkins Baseline to 2.479 #127
Update Parent POM to 5.6 and Jenkins Baseline to 2.479 #127
Conversation
May I know what might be cause of fails in ci checks , after updating parent POM to 5.6 I had to upgrade to Jenkins 2.452 as it was compatible but now the ci checks have failed 3 of them . I am investigating it. . |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for your pull request. It needs to either use parent pom 4.88 and Jenkins baseline 2.452 or parent pom 5.6 and Jenkins baseline 2.479.
The plugin parent pom has been released with a new major version, 5.x. Plugin parent pom 4.x (currently through 4.88) supports Java 11, Java 17, and Java 21 using Spring Security 5, Java EE 8, and Eclipse Jetty 10. Plugin parent pom 5.x (currently through 5.6) supports Java 17 and Java 21 using Spring Security 6, Jakarta EE 9, and Eclipse Jetty 12. It requires a minimum Jenkins version of 2.479.1.
The major version transition from parent pom 4.x to parent pom 5.x includes the following upgrades:
- Spring Security 5 to Spring Security 6
- Java EE 8 to Jakarta EE 9
- Eclipse Jetty 10 to Eclipse Jetty 12
- Java 11 to Java 17 as minimum Java version
The Jenkins 2.479.1 changelog and upgrade guide describe the changes and the impact of those changes on users and on plugin developers.
The transition from plugin parent pom 4.x to 5.x requires changes in the pom file and usually requires changes in the plugin source code. Those changes include:
- Plugin parent pom moves from 4.x to 5.x
- Jenkins baseline moves to 2.479
- Jenkins minimum version moves to 2.479.1
- Plugin BOM moves to bom-2.479.x and should use the most recent release
- Imports of javax.servlet switch to import jakarta.servlet (OpenRewrite can do this change)
- StaplerRequest renamed to StaplerRequest2
- StaplerResponse renamed to StaplerResponse2
- Consumers from other plugins of any modified APIs (those using StaplerRequest or StaplerResponse) must be reviewed for compatibility or a compatibility layer must be created (not an issue for sonar quality gates plugin since there are no other plugins that depend on it)
- (optionally) plugin source code is updated to use Java 17 language features (OpenRewrite does a very good job with that migration)
Examples of the transition are available from:
Thanks a lot Sir for your detailed response regarding this . Much appreciated . I will be implementing the changes now . |
@jonesbusy #127 this shall be not a comment to de-motivate you. You are of cores welcome to improv ethis plugin. Maybe I will find some time to help you. thx a lot |
Thanks for the Help Sir , I did made the required changes and has changed it accordingly ! |
I ran 'mvn clean verify` successfully after implemently the suggestions .
|
Also brought back the comments that were present in original codebase . CI checks have passed successfully now . Thanks Please let me know for further improvements if needed . |
I have removed the extra comment that I wrote as it was not previously present and was not needed too . |
It was interesting when I removed a comment and push I got one ci check failed in security scan . Now I revived it back therefore . |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Thanks! |
Hi Sir, if there are any additional improvements or further changes required, please let me know—I’d be more than happy to incorporate them. Your insights are greatly appreciated, and I’m eager to ensure this PR meets all the necessary standards. Thank you once again for your time and support! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Optionally use the most recent release of the plugin BOM
Co-authored-by: Mark Waite <[email protected]>
Done Sir . Thanks for the suggestion ! |
Description :
This PR updates key dependencies to improve compatibility, stability, and maintainability of the project:
-Updated Parent POM to the latest stable version 5.6, ensuring better dependency management and alignment with modern Jenkins plugin development standards.
-Upgraded Jenkins Baseline to 2.479
Testing done
-Successfully ran
mvn clean verify -DskipTests
to validate the build.Submitter checklist
"No additional tests required as this PR only updates dependencies and does not introduce functional changes."