From fbaeba2225163fcf840981d095b69a3fea5b4fe6 Mon Sep 17 00:00:00 2001 From: Jeremi Piotrowski Date: Wed, 13 Jul 2022 09:53:15 +0000 Subject: [PATCH] build_toolchains: add provenance metadata files to root overlay Catalyst runs builds with copies of the portage/coreos overlays in a chroot, which prevents us from accessing the git metadata necessary to create provenance information. Copy some files over into the root_overlay used by the toolchains catalyst build so that provenance can be correctly captured. --- build_toolchains | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/build_toolchains b/build_toolchains index 4168c01a10..45edf46e0e 100755 --- a/build_toolchains +++ b/build_toolchains @@ -26,6 +26,16 @@ stage4/root_overlay: ${ROOT_OVERLAY} EOF catalyst_stage_default } +create_provenance_overlay() { + local root_overlay="$1" + while read f; do + d="${f%/*}" + mkdir -p "${root_overlay}${d}/" + cp "${f}" "${root_overlay}${d}/" + done < <(find /mnt/host/source/src/scripts -name ORIG_HEAD) + mkdir -p "${root_overlay}/mnt/host/source/.repo/manifests" + cp "${REPO_MANIFESTS_DIR}/version.txt" "${root_overlay}/mnt/host/source/.repo/manifests" +} catalyst_init "$@" check_gsutil_opts @@ -35,6 +45,7 @@ ROOT_OVERLAY="${TEMPDIR}/stage4-${ARCH}-$FLAGS_version-overlay" # toolchain_util.sh is required by catalyst_toolchains.sh mkdir -p "${ROOT_OVERLAY}/tmp" cp "${BUILD_LIBRARY_DIR}/toolchain_util.sh" "${ROOT_OVERLAY}/tmp" +create_provenance_overlay "${ROOT_OVERLAY}" catalyst_build