From 67a5ddec2419034bb1592212490be6182bbebe6f Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Oct 03 2024 17:48:39 +0000 Subject: F42: Add iot base bootc image to sync script Signed-off-by: Paul Whalen --- diff --git a/sync-bootc-base-containers.sh b/sync-bootc-base-containers.sh index f476e76..d232192 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 @@ -69,7 +67,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} @@ -81,7 +79,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" @@ -137,7 +134,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" @@ -145,7 +142,7 @@ 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 + 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 @@ -156,7 +153,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 @@ -178,7 +175,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