Red HatVath SokProblem & solution
Building hermetic notebook images for Open Data Hub and Red Hat OpenShift AI
Summary
Open Data Hub and Red Hat OpenShift AI adopted hermetic container builds to eliminate network failures, satisfy Conforma compliance, and ensure reproducible notebook environments. Instead of pulling packages during image creation, dependencies are pinned in lockfiles, prefetched into a local cache using tools like Cachi2, and installed with the network disabled. The workflow relies on a unified Containerfile capable of running locally, within GitHub Actions, and on Konflux via Tekton tasks. To pass audit checks and avoid generic tarball downloads, the team packaged awkward binaries like ripgrep and Pandoc into multi-arch Python wheels while patching Node postinstall scripts that fetch files at install time. Upstream CentOS and downstream Red Hat Enterprise Linux dependencies are maintained in distinct lock trees to prevent subtle packaging mismatches.
Context
Container builds for Open Data Hub and Red Hat OpenShift AI faced failures due to drifting package mirrors, non-reproducible dependency trees, opaque tarball URLs in SBOMs, and strict Konflux network isolation and Conforma compliance requirements.
Approach / What changed
The team implemented hermetic builds where dependencies are pinned in lockfiles, prefetched into a local cache via tools like Cachi2 and Hermeto, and installed with the network turned off across local environments, GitHub Actions, and Konflux. They prioritized typed package ecosystems over generic URL downloads, created multi-arch Python wheels for tools like ripgrep and Pandoc, patched postinstall download scripts, and separated upstream CentOS lockfiles from downstream RHEL lockfiles.
Takeaways
Hermetic builds decouple caching from image compilation by prefetching all dependencies into a local cache using tools like Cachi2 or Hermeto before running builds without network access.
Typed package ecosystems such as rpm, pip, npm, and gomod are preferred over generic tarball downloads to produce verifiable SBOMs and meet Conforma compliance requirements.
Upstream and downstream lock trees should remain separate to prevent incompatibilities between CentOS packages and subscribed Red Hat Enterprise Linux or AIPCC base images.
Source and freshness
- Source
- developers.redhat.com
- Published
- Added to Yomu
- Last updated
Summaries are generated from the original by a language model. Check the original before relying on it.
Keep reading
Related reading
The Good Stuff
Paid picks we use ourselves. Links carry a referral code — a subscription through one earns us a commission at no extra cost to you.
The best engineering reads, once a week
One useful email. Unsubscribe anytime.