OpenSearch 3.9.0 build recipe
The recipe ReadyStack built readystack/opensearch:3.9.0-CE-ubuntu24.04-r3 from: the upstream source it starts from, every pinned input, and the files that run the build with the network off. Public here: the source and commit, the pinned inputs, all 26 recipe files with their sizes and SHA-256, 9 of them public in full or in part, and the opening lines of the Dockerfile and build script.
The whole recipe
Free accountAn account is an email address, a username and a password: no card, no donation. It opens all 26 recipe files; the build kit itself keeps its own terms.
Upstream source
Publicgithub.com/opensearch-project/OpenSearch (3.9.0) at 4ee42a94e87f66fbf1e62a9871b1b87f91e02472
Pinned inputs
As JSON- Base imageubuntu:24.04@sha256:24737cef17f4e22b1977df7d9a05e77c4e28b7da5b8911f8d8ccda136bf3573c
- BuildKitmoby/buildkit:v0.31.2
sha256:e0e67ea9c4bb07bdef683e29f70f3b623d1eb9c82274a9ec04e6bb0511449fb0 - Build method
kit-prebuilt-tarball - SOURCE_DATE_EPOCH1790105837 (2026-09-22T19:37:17Z)
- Target digest (linux/amd64)sha256:cfeedc2623aba884b8fe03dee8146d237c801f68f985935b344eeaace425136b
- Target config digestsha256:81887ba4288417edf42d9bcef3d060654399b4180bb273edc31c1a9a30ce6742
- Checksummed kit files19,357 (CHECKSUMS.sha256)
Dockerfile Dockerfile.offline.pinned
88 lines · 6.0 KB# ===================================================================== # L-009 HERMETIC OFFLINE BUILD (opensearch, repackage of the official # Apache-2.0 tarball). Run by build_kit's L-009 buildx: # docker buildx build --builder readystack-builder-max --network=none # --attest type=provenance,mode=max --attest type=sbom --push <git-context> # # Pinned-public-base + fully-vendored model (no network at build): # - ubuntu pinned BY DIGEST (cache-warm; RUN steps --network=none hermetic) # - vendored/debs : apt CVE dist-upgrade closure + system # OpenJDK 21 + runtime pkgs, dpkg offline # - vendored/opensearch-src/... : the ALREADY-PATCHED OpenSearch tree # (patch-tree.sh: bundled JDK dropped, unused # security plugins removed, vulnerable jars # raised to version floors) # The proven 0-fixable recipe is docs/OPENSEARCH_BUILDOUT.md. # ===================================================================== FROM ubuntu:24.04@sha256:24737cef17f4e22b1977df7d9a05e77c4e28b7da5b8911f8d8ccda136bf3573c ARG SOURCE_DATE_EPOCH=1790105837 ENV DEBIAN_FRONTEND=noninteractive TZ=UTC LANG=C.UTF-8 LC_ALL=C.UTF-8 # Offline apt: dpkg-install the vendored closure (CVE dist-upgrade + OpenJDK 21 # + curl/tzdata). Two passes + configure-a resolve inter-deb ordering, no network. # The passes hide dpkg's errors, so every vendored deb is then checked installed at # its vendored version: one that did not land would ship the base's older package.
Continues: 64 more lines. Create a free account to read the rest, or sign in.
Build script BUILD_OFFLINE.sh
125 lines · 6.6 KB#!/usr/bin/env bash
# =============================================================================
# ReadyStack — offline reproducible rebuild.
#
# Rebuilds this product's image from THIS ARCHIVE ALONE, with no network access
# of any kind, and prints the resulting linux/amd64 image-manifest digest.
# Run ./VERIFY_OFFLINE.sh afterwards to assert it equals the published digest.
#
# Requirements: linux/amd64 Docker host, docker buildx >= 0.30, jq, tar.
# No git, no registry access, no additional tooling.
#
# ./BUILD_OFFLINE.sh the rebuild (OCI image + a docker-loadable copy)
# ./BUILD_OFFLINE.sh --provenance the same rebuild with SLSA v1 build provenance (mode=max) attached to the OCI
# image, generated by BuildKit, not by any build step. Run on your own hardened,
# isolated build platform and sign that provenance with a key the build cannot
# reach, and the result meets SLSA Build Level 3 (see REBUILD.md). The image
# digest is the same either way.
# =============================================================================
set -euo pipefail
PROVENANCE=0
for arg in "$@"; do
case "$arg" in
--provenance) PROVENANCE=1 ;;
-h|--help) sed -n '2,20p' "$0"; exit 0 ;;Continues: 101 more lines. Create a free account to read the rest, or sign in.
Recipe files
26 files · SHA-256 of each as published here| File | Size | SHA-256 | Access |
|---|---|---|---|
| BASES.tsv | 121 B | 0da49a3ea98f… | Public · View |
| BUILD_OFFLINE.sh | 6.6 KB | 83299978ccd0… | Opening lines public |
| CHECKSUMS.sha256 | 3.4 MB | c5a83ba5efa0… | Free account |
| DOCKERFILE_NAME.txt | 26 B | 9aadd1ede68e… | Public · View |
| Dockerfile | 5.9 KB | 643f4175744d… | Free account |
| Dockerfile.offline | 5.7 KB | 93d538bd26e5… | Free account |
| Dockerfile.offline.pinned | 6.0 KB | 8dc9e82e86b4… | Opening lines public |
| Dockerfile.vendor | 3.3 KB | 72d7f4542869… | Free account |
| MANIFEST.txt | 2.2 MB | d5cb95cc86fb… | Free account |
| SOURCE_DATE_EPOCH.txt | 11 B | ca04888e1408… | Public · View |
| TARGET_DIGEST.txt | 292 B | 2d93d232b1b4… | Public · View |
| VERIFY_OFFLINE.sh | 7.2 KB | 8b036b1f9a7f… | Free account |
| docs/PROVENANCE.md | 2.2 KB | bda9a76e41f4… | Free account |
| docs/REBUILD.md | 5.1 KB | ad5db626c303… | Free account |
| docs/VERIFY.md | 1.9 KB | 9710203b564e… | Free account |
| docs/provenance/BASE_IMAGE_DIGESTS.lock | 53 B | 79ac4273d7fe… | Public · View |
| docs/provenance/BUILD_RECIPE.json | 1.2 KB | ab720d24a194… | Free account |
| docs/provenance/CUSTODY_INPUTS.json | 663 B | 315be99a0537… | Free account |
| docs/provenance/SOURCE_FILE_MANIFEST.json | 454 KB | 9fa22841de5a… | Free account |
| docs/provenance/SOURCE_TREE_HASH.json | 322 B | 979bf36d89aa… | Public · View |
| docs/provenance/SYSTEM_PINNING.lock | 52 B | f516a236c6e3… | Free account |
| docs/provenance/TOOLCHAIN.lock | 983 B | 73eac27f6935… | Free account |
| kitforge-jks-sde.java | 3.3 KB | a7fe3b0a32d8… | Free account |
| patch-tree.sh | 7.6 KB | 7afc58f80d42… | Free account |
| rebuild.json | 1.1 KB | c42bd48b0c56… | Free account |
| toolchain/BUILDKIT_TAG.txt | 22 B | fcd530eeb02b… | Public · View |
Made from ReadyStack-opensearch-3.9.0-CE-ubuntu24.04-r3.tar.gz (SHA-256 54c3c08eabb7e29b46567b59a74e69533b057a24beb5a02142e7d3196582b421), the build kit on sale for this release, on 2026-10-29.
What the Hermetic Build Kit adds
Free with a verified emailThe recipe pins every input; the kit carries them, so the build runs with the network off:
- Vendored sources and packages30 files, 931 MB
- Handbooks, SBOM, security report and records19,297 files, 158 MB
- Pinned BuildKit toolchain1 files, 106 MB
- Base images (OCI layouts)5 files, 28 MB