-
Notifications
You must be signed in to change notification settings - Fork 319
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
Bump min version of Jenkins to 2.204.4 #836
Conversation
* Switched to Jenkins maven plugin 4.0 and BOM for dependencies. * Stripped out specified versions where we don't need to specify. * Removed Jenkins version-specific stuff as it's unnecessary now. * Removed some dependencies which didn't seem to be used directly.
HELP WANTED The docker-plugin's dependencies have, traditionally, been largely left unloved and unmaintained. @rdica @andrei-barna @Osipion @bguerin - you've all got PRs and/or defects you're interested in seeing merged so I figure that I'll ask you all first ... and if you don't know this subject any better than I do but you know someone who does, please do point them in this direction. |
Hello ! First changes, in the dependencyManagement section are just about versions of the dependencies that the plugin could use. They are really used if declared in the dependencies section. Both theses changes seems good to me. Second thing to do it to list the dependencies tree (again, before and after), Looking only at the first level ( If you want, I can test your branch on my installation : up-to-date jenkins and pipeline plugins, running in docker, building through docker agent, JNLP connected. If I could, I would approve this, and thanks for your work ! |
Thank you for the (excellent) explanation and detailed investigation; that is exactly what I was hoping for. Yes, if you can test it then please do so. I'll see if I can find a few Jenkins servers to put it on at work tomorrow too. Once again: thank you for your analysis - it's much appreciated. |
Welcome ;) Building your branch and upgrading the plugin on my installation. Keep you posted |
Changes successfully tested on my installation |
My own testing suggests that it's harmless too - I'll merge it... |
We currently have a failing unit test in #835 that does not appear to be related to that PR.
What we're seeing is that the
DockerNodeStepTest
unit test is failing with exception:This may be related to JENKINS-31089 and that said it was fixed in later versions of Jenkins, so this PR fixes this issue by updating our "minimum" version of Jenkins to the oldest officially supported (2.204.4 according to this page at the time this was written) ... and doing that seems to work...
However, the docker-plugin's dependencies have, traditionally, been largely left unloved and unmaintained.
This test failure seems to be the point where we've hit a breaking point and to fix this has (I think) necessitated a dependency move forwards, and the best way of doing that is to also move the way these dependencies are handled "forwards" too.
What this PR is attempting to do is to bump the minimum version of Jenkins to the oldest officially supported (2.204.4) and then to use the Jenkins "BOM" plugin to then figure out what version of everything else that we use needs to be (in order to avoid the dreaded "upper bounds" maven error).
This has required numerous changes to the pom.xml file that really need reveiwing by someone who understands this better than I do.
(There's also a few changes elsewhere in the code as a result of dependencies changing to non-ancient versions, but they're trivial by comparison.)