MLE-29703 MLE-29709: Fix UBI base image updates and libnsl dependency mismatch#446
Merged
Merged
Conversation
- Update UBI8 base image: 8.10-1775152441 -> 8.10-1778735208 - Update UBI9 base image: 9.7-1775623882 -> 9.7-1778562320 - Fix UBI8 libnsl: bump to el8_10.34 (matches updated glibc) - Fix UBI9 libnsl: use --nodeps to bypass glibc el9_8 version pin (UBI CDN serves glibc el9_8 after microdnf update; AlmaLinux 9.8 stable not yet released; libnsl.so.1 ABI compatible across all RHEL 9.x) - Bump dockerVersion 2.2.4 -> 2.2.5 in Jenkinsfile and keywords.resource
Contributor
There was a problem hiding this comment.
Pull request overview
This PR updates the UBI8/UBI9 dependency base images used by the MarkLogic Docker build, bumps the Docker image version to 2.2.5 for CI/tests, and adjusts the UBI9 deps image’s libnsl installation to work with the newer glibc shipped in the updated UBI9 base.
Changes:
- Bump the default Docker image version from
2.2.4→2.2.5in Jenkins and Robot test resources. - Update UBI8/UBI9
ubi-minimalbase image tags in deps Dockerfiles. - Change UBI9
libnslRPM install to userpm -i --nodepsto bypass the glibc dependency mismatch.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
test/keywords.resource |
Updates default test image tag and ${MARKLOGIC_DOCKER_VERSION} to 2.2.5. |
Jenkinsfile |
Updates the dockerVersion parameter default to 2.2.5. |
dockerFiles/marklogic-deps-ubi9:base |
Updates UBI9 base tag and alters libnsl install behavior (now --nodeps). |
dockerFiles/marklogic-deps-ubi:base |
Updates UBI8 base tag. |
… in UBI9 deps - Replace broad microdnf -y update with targeted microdnf -y upgrade glibc - Add microdnf clean all in same RUN layer to reduce image layer size - Add comment explaining why --nodeps is required and safe for libnsl install
sumanthravipati
approved these changes
May 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Updates UBI8 and UBI9 base image tags to their latest versions and resolves a libnsl RPM installation failure on UBI9 caused by a glibc version mismatch introduced by the new base image. Also bumps the Docker image version from 2.2.4 to 2.2.5 across the Jenkinsfile and test resource file.
Root cause
The updated UBI9 base image ships a newer glibc that conflicts with the libnsl RPM's strict dependency check, causing
rpm -ito abort on UBI9 builds.Fix
Changed
rpm -itorpm -i --nodepsfor the libnsl install step in the UBI9 deps Dockerfile, and updated both UBI8 and UBI9 base image tags to the latest digests.Validation
All four local build + smoke-test combinations passed (exit code 0):