From c04e2d111938ec4a292108616c4343ed929723b4 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Oct 04 2024 18:46:14 +0000 Subject: F41: Add IoT base image to sync script Signed-off-by: Paul Whalen --- diff --git a/sync-bootc-base-containers.sh b/sync-bootc-base-containers.sh index cfe8ce4..8e44ace 100755 --- a/sync-bootc-base-containers.sh +++ b/sync-bootc-base-containers.sh @@ -33,8 +33,6 @@ EXAMPLE EOF } -ARCHES=("aarch64" "x86_64" "ppc64le" "s390x") - arch_to_goarch() { local a=$1; shift # See https://github.com/coreos/stream-metadata-go/blob/c5fe1b98ac1b1e6ab62a606b7580dc1f30703f83/arch/arch.go#L14 @@ -71,7 +69,7 @@ if [[ "${3}" == "-s" ]]; then stage="true" fi -basename="Fedora-IoT-bootc" +BASENAMES=("Fedora-IoT-bootc" "Fedora-IoT-bootc-base") format="oci-archive" vers=${1} compose=${2} @@ -83,7 +81,6 @@ compdate=`echo ${compose} | cut -c 4-` # Can't currently query koji for runroot tasks as they're not tagged # # base_build_nvr=$(koji -q latest-build --type=image f${1}-updates-candidate ${basename} | awk '{print $1}') -base_build_nvr=${basename}-${vers}-${compdate} if [[ ${1} -eq "$current_stable" ]]; then tagname="latest" @@ -140,7 +137,7 @@ find_and_copy_images() { local registry_name=$2 local release=$3 local name - if [[ ${registry_name} = "fedora-bootc" ]]; then + if [[ ${registry_name} = "fedora-bootc" ]] || [[ ${registry_name} = "fedora-iot" ]]; then name=${basename} else printf "Unexpected image type! If we added a new one, it needs mapping here" @@ -148,10 +145,10 @@ find_and_copy_images() { fi # Check that all architectures completed in the build else exit for arch in "${ARCHES[@]}"; do - if [ ! -f "/mnt/koji/compose/iot/Fedora-IoT-${release}-${compdate}/compose/bootc/${arch}/images/${basename}-${release}.${compdate}.ociarchive" ]; then - echo "One of the expected images are missing, exiting." - exit 1 - fi + if [ ! -f "/mnt/koji/compose/iot/Fedora-IoT-${release}-${compdate}/compose/${compose_type}/${arch}/images/${basename}-${release}.${compdate}.ociarchive" ]; then + echo "One of the expected images are missing, exiting." + exit 1 + fi done work_dir=$(mktemp -d) @@ -159,7 +156,7 @@ find_and_copy_images() { # Import the image for arch in "${ARCHES[@]}"; do local filename - filename="/mnt/koji/compose/iot/Fedora-IoT-${release}-${compdate}/compose/bootc/${arch}/images/${basename}-${release}.${compdate}.ociarchive" + filename="/mnt/koji/compose/iot/Fedora-IoT-${release}-${compdate}/compose/${compose_type}/${arch}/images/${basename}-${release}.${compdate}.ociarchive" copy_image ${format}:${filename} ${registry_name}:${release}-${arch} done @@ -181,7 +178,19 @@ fi printf "Syncing compose contailers: ${vers} : ${compose}\n" -# For fedora-bootc -if [[ -n ${base_build_nvr} ]]; then - find_and_copy_images ${base_build_nvr} fedora-bootc ${vers} ${compose} -fi +# For fedora-bootc and fedora-iot +for basename in "${BASENAMES[@]}"; do + if [[ ${basename} = "Fedora-IoT-bootc" ]]; then + registry_name="fedora-bootc" + compose_type="bootc" + ARCHES=("aarch64" "x86_64" "ppc64le" "s390x") + elif [[ ${basename} = "Fedora-IoT-bootc-base" ]]; then + registry_name="fedora-iot" + compose_type="bootc-base" + ARCHES=("aarch64" "x86_64") + fi + base_build_nvr=${basename}-${vers}-${compdate} + if [[ -n ${base_build_nvr} ]]; then + find_and_copy_images ${base_build_nvr} ${registry_name} ${vers} ${compose} + fi +done