-
-
Notifications
You must be signed in to change notification settings - Fork 231
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
[JENKINS-73703] Add agent images for UBI 9 #866
Conversation
Thanks for the contribution ! a quick first feedback (need to take a look) : the Jenkins uses Temurin JDK so we would like to use it here as well. would you be willing to switch back to Temurin ? |
Hi @adambkaplan , as discussed during the Jenkins Platform SIG meeting today:
Is that OK for you to update your PR to match the JDK pattern of other images (current UBI or Debian)? |
Happy to match the JDK pattern for the controller's UBI image. I can completely understand the need to keep things in sync when it comes to testing, verification, and patching. |
Thank you so much. 🤗 |
@gounthar @dduportal updated the PR to use the Temurin JDK, using the same scripts as the other agent images. Was able to verify the controller-agent connection works for the I tried to update |
Thanks, I will have a look. 👍 |
c0f13fb
to
b356f11
Compare
@gounthar I have squashed commits, rebased this PR, and taken it out of draft state. PTAL. |
Thanks very much @adambkaplan ! I'm a little surprised at the addition of UBI 8 + Java 11. Jenkins weekly has not supported Java 11 since 18 Jun 2024 (Jenkins 2.463). Jenkins LTS 2.477.1 will not support Java 11 when it releases 30 Oct 2024. Current Jenkins LTS (2.462.2) supports Java 11 and the 2 Oct 2024 Jenkins LTS (2.462.3) will support Java 11, but those will be the last LTS versions to support Java 11. Jenkins does not support running a Jenkins agent with an older Java major version than the Java major version that is used on the controller. That doesn't mean that we should not add a UBI 8 + Java 11 agent container, but the usable life of that container image seems much smaller than the UBI 9 + Java 17 and UBI 9 + Java 21 container images. Is there a larger story behind the inclusion of an agent image for UBI 8 + Java 11? |
Not really. The present change set is meant to provide the same set of base OS + JREs for the agent that the community is providing for the main server. If the community plans on dropping UBI 8 support when Java 11 reaches EOL (effectively next week), then I agree it doesn't make sense to build an agent image now. |
Could you drop it please |
Done! |
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.
All my remaining comments are optional. This is ready to merge once CI job passes.
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.
Small suggestions.
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.
If the ARG UBI9_TAG
suggestion is accepted, it should also be defined as a variable here and passed to the corresponding target like what is done for DEBIAN_RELEASE
.
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.
Accepting the suggestion, thus I'll add a follow-up commit with the new variable.
.github/dependabot.yml
Outdated
# Red Hat Enterprise Linux Universal Base Image | ||
|
||
- package-ecosystem: docker | ||
directory: "rhel" | ||
schedule: | ||
interval: weekly | ||
open-pull-requests-limit: 2 | ||
target-branch: master | ||
reviewers: | ||
- MarkEWaite | ||
labels: | ||
- dependencies | ||
|
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.
# Red Hat Enterprise Linux Universal Base Image | |
- package-ecosystem: docker | |
directory: "rhel" | |
schedule: | |
interval: weekly | |
open-pull-requests-limit: 2 | |
target-branch: master | |
reviewers: | |
- MarkEWaite | |
labels: | |
- dependencies |
Cf #866 (comment), removing this in favor of an updatecli manifest which can be added in a follow-up pull request.
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.
Note that some content above should be removed too (unrelated to this PR)
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.
Note that some content above should be removed too (unrelated to this PR)
Addressed in #877
Add agent and inbound-agent images for RHEL, based on UBI 8 and UBI 9. The standard UBI image is used as the base, making the resulting images free to redistribute anywhere (no subscription or terms agreement required). Like the other docker-agent images, these download and shrink the Adoptium JDK instead of using the default openjdk packages in the OS distribution. Signed-off-by: Adam Kaplan <adam.kaplan@redhat.com>
With the upcoming EOL of Java 11, the UBI 8 image for Jenkins server will no longer be supported. Creating a UBI 8 image therefore does not make any sense. The tag for the base UBI 9 image was converted to a build arg, to facilitate automatic updates via updatecli. Other minor fixes to documentation and image metadata also included. Signed-off-by: Adam Kaplan <adam.kaplan@redhat.com> Co-authored-by: Mark Waite <mark.earl.waite@gmail.com> Co-authored-by: lemeurherveCB <137290663+lemeurherveCB@users.noreply.github.com>
29053db
to
4fc76bf
Compare
Rebased and squashed commits down to 2 (preserving the decisions around UBI 8 and updatecli). Thanks everyone! |
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!
Add agent and inbound-agent images for RHEL, based on UBI 9. The base images are part of the UBI catalog. Therefore, the resulting images are free to redistribute anywhere (no subscription or terms agreement required).
Based on initial feedback from the community, these images use the same scripts to install and shrink the JRE that the image uses at runtime, rather than the respective version of OpenJDK packaged by Red Hat.
Testing done
I verified locally that the agent images build with
podman
, and that when run as a container the agents can communicate with an appropriately configured Jenkins controller/server.Submitter checklist