From bff3d8261db7ad59f3f24c9719ce96fa427d8353 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Mon, 12 Aug 2024 14:11:08 -0400 Subject: [PATCH 01/34] Rawhide is now Fedora 42 Signed-off-by: Paul Whalen --- fedora-iot.conf | 24 ++++++++++++------------ nightly.sh | 6 +++--- sync-release.sh | 8 ++++---- twoweek-nightly.sh | 6 +++--- 4 files changed, 22 insertions(+), 22 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index 99c08de..cfa2b1f 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -1,9 +1,9 @@ # PRODUCT INFO release_name = 'Fedora-IoT' release_short = 'Fedora-IoT' -release_version = '41' +release_version = '42' # Let's not build install media during this run. For the image builds -# and OSTree installer we'll use inputs from other f41 runs. +# and OSTree installer we'll use inputs from other f42 runs. skip_phases = ["buildinstall", "createrepo", "extra_files"] # GENERAL SETTINGS @@ -11,11 +11,11 @@ comps_file = { 'scm': 'git', 'repo': 'https://pagure.io/fedora-comps.git', 'branch': 'main', - 'file': 'comps-f41.xml', - 'command': 'make comps-f41.xml' + 'file': 'comps-f42.xml', + 'command': 'make comps-f42.xml' } variants_file='variants-fedora.xml' -sigkeys = ['e99d6ad1'] +sigkeys = ['105ef944'] # limit tree architectures # if undefined, all architectures from variants.xml will be included @@ -27,7 +27,7 @@ hashed_directories = True # RUNROOT settings runroot_channel = 'compose' -runroot_tag = 'f41-build' +runroot_tag = 'f42-build' # PKGSET pkgset_source = 'koji' # koji, repos @@ -37,7 +37,7 @@ pkgset_source = 'koji' # koji, repos # pkgset_repos = {} # PKGSET - KOJI -pkgset_koji_tag = 'f41-iot' +pkgset_koji_tag = 'f42-iot' pkgset_koji_inherit = False filter_system_release_packages = False @@ -205,15 +205,15 @@ translate_paths = [ # These will be inherited by live_media, live_images and image_build global_ksurl = 'git+https://pagure.io/fedora-kickstarts.git?#HEAD' global_release = '!RELEASE_FROM_LABEL_DATE_TYPE_RESPIN' -global_version = '41' +global_version = '42' # live_images ignores this in favor of live_target -global_target = 'f41' +global_target = 'f42' osbuild = { "^IoT$": [ { "name": "%s-raw" % release_name, - "distro": "fedora-41", + "distro": "fedora-42", "image_types": ["iot-raw-image"], "target": "f%s-candidate" % release_version, "arches": ["x86_64", "aarch64"], @@ -224,7 +224,7 @@ osbuild = { }, { "name": "%s-ostree" % release_name, - "distro": "fedora-41", + "distro": "fedora-42", "image_types": ["iot-installer"], "target": "f%s-candidate" % release_version, "arches": ["x86_64", "aarch64"], @@ -236,7 +236,7 @@ osbuild = { }, { "name": "%s-provisioner" % release_name, - "distro": "fedora-41", + "distro": "fedora-42", "image_types": ["iot-simplified-installer"], "target": "f%s-candidate" % release_version, "arches": ["x86_64", "aarch64"], diff --git a/nightly.sh b/nightly.sh index e42e037..a6675b7 100755 --- a/nightly.sh +++ b/nightly.sh @@ -9,9 +9,9 @@ SKIP_PHASES="--skip-phase=productimg" DEST=$(pwd) DATE=$(date "+%Y%m%d") SHORT="Fedora-IoT" -RELEASE="41" -RELEASE_TITLE="41" -COMPSFILE="comps-f41.xml" +RELEASE="42" +RELEASE_TITLE="42" +COMPSFILE="comps-f42.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " diff --git a/sync-release.sh b/sync-release.sh index b2b7276..1ad1bfe 100755 --- a/sync-release.sh +++ b/sync-release.sh @@ -12,14 +12,14 @@ DEST=$(pwd) DATE=$(date "+%Y%m%d") # the Pungi 'shortname', which we will include in fedmsgs for disambiguation SHORT="Fedora-IoT" -RELEASE="41" -RELEASE_TITLE="41" -COMPSFILE="comps-f41.xml" +RELEASE="42" +RELEASE_TITLE="42" +COMPSFILE="comps-f42.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " RSYNCPREFIX="sudo -u ftpsync" -RSYNCTARGET="/pub/alt/iot/41/" +RSYNCTARGET="/pub/alt/iot/42/" OLDCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) NEWCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) diff --git a/twoweek-nightly.sh b/twoweek-nightly.sh index 990268a..7d8d312 100755 --- a/twoweek-nightly.sh +++ b/twoweek-nightly.sh @@ -11,9 +11,9 @@ DEST=$(pwd) DATE=$(date "+%Y%m%d") # the Pungi 'shortname', which we will include in fedmsgs for disambiguation SHORT="Fedora-IoT" -RELEASE="41" -RELEASE_TITLE="41" -COMPSFILE="comps-f41.xml" +RELEASE="42" +RELEASE_TITLE="42" +COMPSFILE="comps-f42.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " From 146a5e1e4b57017eae2234fe5eaebb5143635b2c Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Fri, 16 Aug 2024 12:53:22 -0400 Subject: [PATCH 02/34] F42: Update sync-script for f42 Signed-off-by: Paul Whalen --- sync-bootc-base-containers.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sync-bootc-base-containers.sh b/sync-bootc-base-containers.sh index da29480..f476e76 100755 --- a/sync-bootc-base-containers.sh +++ b/sync-bootc-base-containers.sh @@ -51,7 +51,7 @@ arch_to_goarch() { # need to move the fedora:latest tag current_stable="40" # Define what is rawhide so we know to push that tag -current_rawhide="41" +current_rawhide="42" # Sanity checking if ! [[ "${1}" =~ ^-?[0-9]+$ ]]; then @@ -89,6 +89,7 @@ fi if [[ ${1} -eq "$current_rawhide" ]]; then tagname="rawhide" fi + if [[ -z "$stage" ]]; then registries=("registry.fedoraproject.org" "candidate-registry.fedoraproject.org" "quay.io/fedora") else From d5565f5bfe90166c79b5898b529d1dc878201bd1 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Mon, 23 Sep 2024 15:43:10 -0400 Subject: [PATCH 03/34] F42: Add iot base bootc image Signed-off-by: Paul Whalen --- fedora-iot.conf | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/fedora-iot.conf b/fedora-iot.conf index cfa2b1f..b248af4 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -291,6 +291,15 @@ ostree_container = { "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], "failable": ['*'], }, + "^bootc-base$": { + "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", + "config_url": "https://pagure.io/fedora-iot/ostree.git", + "config_branch": "main", + "treefile": "fedora-iot-bootc.yaml", + "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], + "arches": ["x86_64", "aarch64"], + "failable": ['*'], + }, } koji_profile = 'compose_koji' From 43008ac60cabedacfe2312278f05f7a78809ecb2 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Wed, 25 Sep 2024 18:04:06 -0400 Subject: [PATCH 04/34] Update variants to include the bootc-base Signed-off-by: Paul Whalen --- fedora-iot.conf | 2 +- variants-fedora.xml | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index b248af4..5ceb39c 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -22,7 +22,7 @@ sigkeys = ['105ef944'] tree_arches = ['aarch64', 'x86_64', "ppc64le", "s390x"] # limit tree variants # if undefined, all variants from variants.xml will be included -tree_variants = ['IoT', 'bootc', 'bootc-tier0'] +tree_variants = ['IoT', 'bootc', 'bootc-tier0', 'bootc-base'] hashed_directories = True # RUNROOT settings diff --git a/variants-fedora.xml b/variants-fedora.xml index 462c3ea..0568bf8 100644 --- a/variants-fedora.xml +++ b/variants-fedora.xml @@ -7,6 +7,12 @@ x86_64 + + + aarch64 + x86_64 + + aarch64 From 67a5ddec2419034bb1592212490be6182bbebe6f Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Thu, 3 Oct 2024 13:48:39 -0400 Subject: [PATCH 05/34] F42: Add iot base bootc image to sync script Signed-off-by: Paul Whalen --- sync-bootc-base-containers.sh | 31 ++++++++++++++++++++----------- 1 file changed, 20 insertions(+), 11 deletions(-) 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 From 702da4a01d9ef39bbdf3cfe5b6456aafb8a73e4f Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Fri, 4 Oct 2024 10:38:07 -0400 Subject: [PATCH 06/34] F42: drop tier-0 from the compose Signed-off-by: Paul Whalen --- fedora-iot.conf | 11 +---------- variants-fedora.xml | 8 -------- 2 files changed, 1 insertion(+), 18 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index 5ceb39c..11457e3 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -22,7 +22,7 @@ sigkeys = ['105ef944'] tree_arches = ['aarch64', 'x86_64', "ppc64le", "s390x"] # limit tree variants # if undefined, all variants from variants.xml will be included -tree_variants = ['IoT', 'bootc', 'bootc-tier0', 'bootc-base'] +tree_variants = ['IoT', 'bootc', 'bootc-base'] hashed_directories = True # RUNROOT settings @@ -282,15 +282,6 @@ ostree_container = { "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], "failable": ['*'], }, - "^bootc-tier0$": { - "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", - "config_url": "https://pagure.io/fedora-iot/base-images", - "config_branch": "main", - "treefile": "fedora-tier-0.yaml", - "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], - "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], - "failable": ['*'], - }, "^bootc-base$": { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", "config_url": "https://pagure.io/fedora-iot/ostree.git", diff --git a/variants-fedora.xml b/variants-fedora.xml index 0568bf8..9deb115 100644 --- a/variants-fedora.xml +++ b/variants-fedora.xml @@ -21,12 +21,4 @@ s390x - - - aarch64 - x86_64 - ppc64le - s390x - - From 9fed822cc19acb6e6a719eefc6e3400deec64246 Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Mon, 7 Oct 2024 19:02:35 -0700 Subject: [PATCH 07/34] Build bootc images in IoT variant, tweak IoT image's subvariant As discussed in https://pagure.io/fedora-infra/ansible/pull-request/2295 , this subvariant is more usable and in line with previous practice. It will make life a bit easier for fedora-image-uploader. This also tweaks the config to build both ostree container images in the IoT variant and give them explicit subvariants, instead of building them in their own variants and relying on the variant to be inherited as the subvariant definition too. This just seems a bit cleaner and avoids these variants showing up in the metadata, which reads a bit oddly. Signed-off-by: Adam Williamson --- fedora-iot.conf | 42 +++++++++++++++++++++++------------------- 1 file changed, 23 insertions(+), 19 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index 11457e3..fd349ca 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -22,7 +22,7 @@ sigkeys = ['105ef944'] tree_arches = ['aarch64', 'x86_64', "ppc64le", "s390x"] # limit tree variants # if undefined, all variants from variants.xml will be included -tree_variants = ['IoT', 'bootc', 'bootc-base'] +tree_variants = ['IoT'] hashed_directories = True # RUNROOT settings @@ -273,24 +273,28 @@ ostree = { } ostree_container = { - "^bootc$": { - "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", - "config_url": "https://pagure.io/fedora-iot/base-images", - "config_branch": "main", - "treefile": "fedora-bootc.yaml", - "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], - "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], - "failable": ['*'], - }, - "^bootc-base$": { - "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", - "config_url": "https://pagure.io/fedora-iot/ostree.git", - "config_branch": "main", - "treefile": "fedora-iot-bootc.yaml", - "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], - "arches": ["x86_64", "aarch64"], - "failable": ['*'], - }, + "^IoT$": [ + { + "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", + "config_url": "https://pagure.io/fedora-iot/base-images", + "config_branch": "main", + "treefile": "fedora-bootc.yaml", + "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], + "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], + "failable": ['*'], + "subvariant": "bootc", + }, + { + "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", + "config_url": "https://pagure.io/fedora-iot/ostree.git", + "config_branch": "main", + "treefile": "fedora-iot-bootc.yaml", + "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], + "arches": ["x86_64", "aarch64"], + "failable": ['*'], + "subvariant": "IoT_bootc_base", + }, + ] } koji_profile = 'compose_koji' From 0b466a659dd723e1561b080c218bf1a8cf3c7c37 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Tue, 8 Oct 2024 13:44:52 -0400 Subject: [PATCH 08/34] Revert "Build bootc images in IoT variant, tweak IoT image's subvariant" This reverts commit 9fed822cc19acb6e6a719eefc6e3400deec64246. --- fedora-iot.conf | 42 +++++++++++++++++++----------------------- 1 file changed, 19 insertions(+), 23 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index fd349ca..11457e3 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -22,7 +22,7 @@ sigkeys = ['105ef944'] tree_arches = ['aarch64', 'x86_64', "ppc64le", "s390x"] # limit tree variants # if undefined, all variants from variants.xml will be included -tree_variants = ['IoT'] +tree_variants = ['IoT', 'bootc', 'bootc-base'] hashed_directories = True # RUNROOT settings @@ -273,28 +273,24 @@ ostree = { } ostree_container = { - "^IoT$": [ - { - "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", - "config_url": "https://pagure.io/fedora-iot/base-images", - "config_branch": "main", - "treefile": "fedora-bootc.yaml", - "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], - "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], - "failable": ['*'], - "subvariant": "bootc", - }, - { - "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", - "config_url": "https://pagure.io/fedora-iot/ostree.git", - "config_branch": "main", - "treefile": "fedora-iot-bootc.yaml", - "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], - "arches": ["x86_64", "aarch64"], - "failable": ['*'], - "subvariant": "IoT_bootc_base", - }, - ] + "^bootc$": { + "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", + "config_url": "https://pagure.io/fedora-iot/base-images", + "config_branch": "main", + "treefile": "fedora-bootc.yaml", + "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], + "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], + "failable": ['*'], + }, + "^bootc-base$": { + "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", + "config_url": "https://pagure.io/fedora-iot/ostree.git", + "config_branch": "main", + "treefile": "fedora-iot-bootc.yaml", + "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], + "arches": ["x86_64", "aarch64"], + "failable": ['*'], + }, } koji_profile = 'compose_koji' From 6ae099cb81cb5eaec69137d3c6dbcfd2ee3df370 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Tue, 8 Oct 2024 14:10:25 -0400 Subject: [PATCH 09/34] F42: update basename for IoT container Signed-off-by: Paul Whalen --- fedora-iot.conf | 4 ++-- sync-bootc-base-containers.sh | 4 ++-- variants-fedora.xml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index 11457e3..c7ead3d 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -22,7 +22,7 @@ sigkeys = ['105ef944'] tree_arches = ['aarch64', 'x86_64', "ppc64le", "s390x"] # limit tree variants # if undefined, all variants from variants.xml will be included -tree_variants = ['IoT', 'bootc', 'bootc-base'] +tree_variants = ['IoT', 'bootc', 'IoT_bootc_base'] hashed_directories = True # RUNROOT settings @@ -282,7 +282,7 @@ ostree_container = { "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], "failable": ['*'], }, - "^bootc-base$": { + "^IoT_bootc_base$": { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", "config_url": "https://pagure.io/fedora-iot/ostree.git", "config_branch": "main", diff --git a/sync-bootc-base-containers.sh b/sync-bootc-base-containers.sh index d232192..b69dabf 100755 --- a/sync-bootc-base-containers.sh +++ b/sync-bootc-base-containers.sh @@ -67,7 +67,7 @@ if [[ "${3}" == "-s" ]]; then stage="true" fi -BASENAMES=("Fedora-IoT-bootc" "Fedora-IoT-bootc-base") +BASENAMES=("Fedora-IoT-bootc" "Fedora-IoT-IoT_bootc_base") format="oci-archive" vers=${1} compose=${2} @@ -181,7 +181,7 @@ for basename in "${BASENAMES[@]}"; do registry_name="fedora-bootc" compose_type="bootc" ARCHES=("aarch64" "x86_64" "ppc64le" "s390x") - elif [[ ${basename} = "Fedora-IoT-bootc-base" ]]; then + elif [[ ${basename} = "Fedora-IoT-IoT_bootc_base" ]]; then registry_name="fedora-iot" compose_type="bootc-base" ARCHES=("aarch64" "x86_64") diff --git a/variants-fedora.xml b/variants-fedora.xml index 9deb115..041f3ba 100644 --- a/variants-fedora.xml +++ b/variants-fedora.xml @@ -7,7 +7,7 @@ x86_64 - + aarch64 x86_64 From 950193a148ca4a2cf25792d0943d68635d51edf0 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Tue, 8 Oct 2024 14:55:56 -0400 Subject: [PATCH 10/34] Revert "F42: update basename for IoT container" This reverts commit 6ae099cb81cb5eaec69137d3c6dbcfd2ee3df370. --- fedora-iot.conf | 4 ++-- sync-bootc-base-containers.sh | 4 ++-- variants-fedora.xml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index c7ead3d..11457e3 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -22,7 +22,7 @@ sigkeys = ['105ef944'] tree_arches = ['aarch64', 'x86_64', "ppc64le", "s390x"] # limit tree variants # if undefined, all variants from variants.xml will be included -tree_variants = ['IoT', 'bootc', 'IoT_bootc_base'] +tree_variants = ['IoT', 'bootc', 'bootc-base'] hashed_directories = True # RUNROOT settings @@ -282,7 +282,7 @@ ostree_container = { "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], "failable": ['*'], }, - "^IoT_bootc_base$": { + "^bootc-base$": { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", "config_url": "https://pagure.io/fedora-iot/ostree.git", "config_branch": "main", diff --git a/sync-bootc-base-containers.sh b/sync-bootc-base-containers.sh index b69dabf..d232192 100755 --- a/sync-bootc-base-containers.sh +++ b/sync-bootc-base-containers.sh @@ -67,7 +67,7 @@ if [[ "${3}" == "-s" ]]; then stage="true" fi -BASENAMES=("Fedora-IoT-bootc" "Fedora-IoT-IoT_bootc_base") +BASENAMES=("Fedora-IoT-bootc" "Fedora-IoT-bootc-base") format="oci-archive" vers=${1} compose=${2} @@ -181,7 +181,7 @@ for basename in "${BASENAMES[@]}"; do registry_name="fedora-bootc" compose_type="bootc" ARCHES=("aarch64" "x86_64" "ppc64le" "s390x") - elif [[ ${basename} = "Fedora-IoT-IoT_bootc_base" ]]; then + elif [[ ${basename} = "Fedora-IoT-bootc-base" ]]; then registry_name="fedora-iot" compose_type="bootc-base" ARCHES=("aarch64" "x86_64") diff --git a/variants-fedora.xml b/variants-fedora.xml index 041f3ba..9deb115 100644 --- a/variants-fedora.xml +++ b/variants-fedora.xml @@ -7,7 +7,7 @@ x86_64 - + aarch64 x86_64 From 71f65004d89abd08ff5674d85370363332130f7c Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Tue, 8 Oct 2024 16:29:07 -0400 Subject: [PATCH 11/34] F42: use subvariant with bootc containers Signed-off-by: Paul Whalen --- fedora-iot.conf | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fedora-iot.conf b/fedora-iot.conf index 11457e3..37300e6 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -281,6 +281,7 @@ ostree_container = { "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], "failable": ['*'], + "subvariant": "bootc", }, "^bootc-base$": { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", @@ -290,6 +291,7 @@ ostree_container = { "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], "arches": ["x86_64", "aarch64"], "failable": ['*'], + "subvariant": "IoT_bootc_base", }, } From 0f6c882858b5dd2ee1fafee0746fb2deea6d31f6 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Wed, 9 Oct 2024 10:40:52 -0400 Subject: [PATCH 12/34] Revert "F42: use subvariant with bootc containers" This reverts commit 71f65004d89abd08ff5674d85370363332130f7c. --- fedora-iot.conf | 2 -- 1 file changed, 2 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index 37300e6..11457e3 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -281,7 +281,6 @@ ostree_container = { "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], "failable": ['*'], - "subvariant": "bootc", }, "^bootc-base$": { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", @@ -291,7 +290,6 @@ ostree_container = { "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], "arches": ["x86_64", "aarch64"], "failable": ['*'], - "subvariant": "IoT_bootc_base", }, } From c1107d53902f70f4e43a5d8262d5ad4012488efb Mon Sep 17 00:00:00 2001 From: Jonathan Lebon Date: Wed, 23 Oct 2024 15:31:01 -0400 Subject: [PATCH 13/34] pungi: update treefile to use for rawhide fedora-bootc As discussed in https://gitlab.com/fedora/bootc/tracker/-/issues/39, we will be maintaining all Fedora versions in the `main` branch going forward. The `fedora-bootc.yaml` file upstream is now version-less. To not break pungi, we need it to use the stub treefile we added that sets the releasever to rawhide. --- fedora-iot.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index 11457e3..aa60ed4 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -277,7 +277,7 @@ ostree_container = { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", "config_url": "https://pagure.io/fedora-iot/base-images", "config_branch": "main", - "treefile": "fedora-bootc.yaml", + "treefile": "fedora-rawhide.yaml", "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], "failable": ['*'], From 2dcee7e4b153658ea6c3cb0830a064f9b317eba0 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Mon, 4 Nov 2024 16:36:27 -0500 Subject: [PATCH 14/34] F42: Update iot base image to use base-images mirror and tier-x Signed-off-by: Paul Whalen --- fedora-iot.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index aa60ed4..a864c54 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -284,9 +284,9 @@ ostree_container = { }, "^bootc-base$": { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", - "config_url": "https://pagure.io/fedora-iot/ostree.git", + "config_url": "https://pagure.io/fedora-iot/fedora-iot-bootc.git", "config_branch": "main", - "treefile": "fedora-iot-bootc.yaml", + "treefile": "fedora-iot-rawhide.yaml", "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], "arches": ["x86_64", "aarch64"], "failable": ['*'], From faee0e8c9dde309a7a858d37b7d539cca09b50d2 Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Tue, 5 Nov 2024 07:49:29 -0800 Subject: [PATCH 15/34] sync-bootc-base-containers: 41 is now current Signed-off-by: Adam Williamson --- sync-bootc-base-containers.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sync-bootc-base-containers.sh b/sync-bootc-base-containers.sh index d232192..ee24432 100755 --- a/sync-bootc-base-containers.sh +++ b/sync-bootc-base-containers.sh @@ -47,7 +47,7 @@ arch_to_goarch() { # This is the release of Fedora that is currently stable, it will define if we # need to move the fedora:latest tag -current_stable="40" +current_stable="41" # Define what is rawhide so we know to push that tag current_rawhide="42" # Sanity checking From 065867da2e7fb2d49093f1926dd3cdcaccd01e4a Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Tue, 5 Nov 2024 16:30:22 -0500 Subject: [PATCH 16/34] Revert F42: Update iot base image to use base-images mirror and tier-x Signed-off-by: Paul Whalen --- fedora-iot.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index a864c54..aa60ed4 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -284,9 +284,9 @@ ostree_container = { }, "^bootc-base$": { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", - "config_url": "https://pagure.io/fedora-iot/fedora-iot-bootc.git", + "config_url": "https://pagure.io/fedora-iot/ostree.git", "config_branch": "main", - "treefile": "fedora-iot-rawhide.yaml", + "treefile": "fedora-iot-bootc.yaml", "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], "arches": ["x86_64", "aarch64"], "failable": ['*'], From 5457ba1b6bacb58fd85e02df92ebdb93273679e1 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Fri, 15 Nov 2024 13:12:03 -0500 Subject: [PATCH 17/34] F42: Update iot base image to use base-images mirror and tier-x Signed-off-by: Paul Whalen --- fedora-iot.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index aa60ed4..a864c54 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -284,9 +284,9 @@ ostree_container = { }, "^bootc-base$": { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", - "config_url": "https://pagure.io/fedora-iot/ostree.git", + "config_url": "https://pagure.io/fedora-iot/fedora-iot-bootc.git", "config_branch": "main", - "treefile": "fedora-iot-bootc.yaml", + "treefile": "fedora-iot-rawhide.yaml", "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], "arches": ["x86_64", "aarch64"], "failable": ['*'], From 606ff924e12e929f72fd86ab5e1f0cb438b22748 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Fri, 22 Nov 2024 14:32:23 -0500 Subject: [PATCH 18/34] F42: Temporarily make all deliverables failable Signed-off-by: Paul Whalen --- fedora-iot.conf | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fedora-iot.conf b/fedora-iot.conf index a864c54..6fab147 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -221,6 +221,7 @@ osbuild = { "ostree_url": "https://kojipkgs.fedoraproject.org/compose/iot/repo/", "ostree_ref": "fedora/rawhide/$arch/iot", "subvariant": "IoT", + "failable": ["*"], }, { "name": "%s-ostree" % release_name, @@ -233,6 +234,7 @@ osbuild = { "ostree_ref": "fedora/rawhide/$arch/iot", "subvariant": "IoT", "manifest_type": "dvd-ostree", + "failable": ["*"], }, { "name": "%s-provisioner" % release_name, From 726ab13a4862453631e80d4872a3f16294c5df2c Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Mon, 13 Jan 2025 11:33:26 -0500 Subject: [PATCH 19/34] F42: revert Temporarily make all deliverables failable Signed-off-by: Paul Whalen --- fedora-iot.conf | 2 -- 1 file changed, 2 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index 6fab147..a864c54 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -221,7 +221,6 @@ osbuild = { "ostree_url": "https://kojipkgs.fedoraproject.org/compose/iot/repo/", "ostree_ref": "fedora/rawhide/$arch/iot", "subvariant": "IoT", - "failable": ["*"], }, { "name": "%s-ostree" % release_name, @@ -234,7 +233,6 @@ osbuild = { "ostree_ref": "fedora/rawhide/$arch/iot", "subvariant": "IoT", "manifest_type": "dvd-ostree", - "failable": ["*"], }, { "name": "%s-provisioner" % release_name, From 2b7d52ea42aece7c7fe47746aee98f3e38be5745 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Tue, 4 Feb 2025 15:51:46 -0500 Subject: [PATCH 20/34] Rawhide is now Fedora 43 Signed-off-by: Paul Whalen --- fedora-iot.conf | 24 ++++++++++++------------ nightly.sh | 6 +++--- sync-bootc-base-containers.sh | 2 +- sync-release.sh | 8 ++++---- twoweek-nightly.sh | 6 +++--- 5 files changed, 23 insertions(+), 23 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index a864c54..4827cef 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -1,9 +1,9 @@ # PRODUCT INFO release_name = 'Fedora-IoT' release_short = 'Fedora-IoT' -release_version = '42' +release_version = '43' # Let's not build install media during this run. For the image builds -# and OSTree installer we'll use inputs from other f42 runs. +# and OSTree installer we'll use inputs from other f43 runs. skip_phases = ["buildinstall", "createrepo", "extra_files"] # GENERAL SETTINGS @@ -11,11 +11,11 @@ comps_file = { 'scm': 'git', 'repo': 'https://pagure.io/fedora-comps.git', 'branch': 'main', - 'file': 'comps-f42.xml', - 'command': 'make comps-f42.xml' + 'file': 'comps-f43.xml', + 'command': 'make comps-f43.xml' } variants_file='variants-fedora.xml' -sigkeys = ['105ef944'] +sigkeys = ['31645531'] # limit tree architectures # if undefined, all architectures from variants.xml will be included @@ -27,7 +27,7 @@ hashed_directories = True # RUNROOT settings runroot_channel = 'compose' -runroot_tag = 'f42-build' +runroot_tag = 'f43-build' # PKGSET pkgset_source = 'koji' # koji, repos @@ -37,7 +37,7 @@ pkgset_source = 'koji' # koji, repos # pkgset_repos = {} # PKGSET - KOJI -pkgset_koji_tag = 'f42-iot' +pkgset_koji_tag = 'f43-iot' pkgset_koji_inherit = False filter_system_release_packages = False @@ -205,15 +205,15 @@ translate_paths = [ # These will be inherited by live_media, live_images and image_build global_ksurl = 'git+https://pagure.io/fedora-kickstarts.git?#HEAD' global_release = '!RELEASE_FROM_LABEL_DATE_TYPE_RESPIN' -global_version = '42' +global_version = '43' # live_images ignores this in favor of live_target -global_target = 'f42' +global_target = 'f43' osbuild = { "^IoT$": [ { "name": "%s-raw" % release_name, - "distro": "fedora-42", + "distro": "fedora-43", "image_types": ["iot-raw-image"], "target": "f%s-candidate" % release_version, "arches": ["x86_64", "aarch64"], @@ -224,7 +224,7 @@ osbuild = { }, { "name": "%s-ostree" % release_name, - "distro": "fedora-42", + "distro": "fedora-43", "image_types": ["iot-installer"], "target": "f%s-candidate" % release_version, "arches": ["x86_64", "aarch64"], @@ -236,7 +236,7 @@ osbuild = { }, { "name": "%s-provisioner" % release_name, - "distro": "fedora-42", + "distro": "fedora-43", "image_types": ["iot-simplified-installer"], "target": "f%s-candidate" % release_version, "arches": ["x86_64", "aarch64"], diff --git a/nightly.sh b/nightly.sh index a6675b7..343e11e 100755 --- a/nightly.sh +++ b/nightly.sh @@ -9,9 +9,9 @@ SKIP_PHASES="--skip-phase=productimg" DEST=$(pwd) DATE=$(date "+%Y%m%d") SHORT="Fedora-IoT" -RELEASE="42" -RELEASE_TITLE="42" -COMPSFILE="comps-f42.xml" +RELEASE="43" +RELEASE_TITLE="43" +COMPSFILE="comps-f43.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " diff --git a/sync-bootc-base-containers.sh b/sync-bootc-base-containers.sh index ee24432..6a7e03f 100755 --- a/sync-bootc-base-containers.sh +++ b/sync-bootc-base-containers.sh @@ -49,7 +49,7 @@ arch_to_goarch() { # need to move the fedora:latest tag current_stable="41" # Define what is rawhide so we know to push that tag -current_rawhide="42" +current_rawhide="43" # Sanity checking if ! [[ "${1}" =~ ^-?[0-9]+$ ]]; then diff --git a/sync-release.sh b/sync-release.sh index 1ad1bfe..0999c92 100755 --- a/sync-release.sh +++ b/sync-release.sh @@ -12,14 +12,14 @@ DEST=$(pwd) DATE=$(date "+%Y%m%d") # the Pungi 'shortname', which we will include in fedmsgs for disambiguation SHORT="Fedora-IoT" -RELEASE="42" -RELEASE_TITLE="42" -COMPSFILE="comps-f42.xml" +RELEASE="43" +RELEASE_TITLE="43" +COMPSFILE="comps-f43.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " RSYNCPREFIX="sudo -u ftpsync" -RSYNCTARGET="/pub/alt/iot/42/" +RSYNCTARGET="/pub/alt/iot/43/" OLDCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) NEWCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) diff --git a/twoweek-nightly.sh b/twoweek-nightly.sh index 7d8d312..8094fd8 100755 --- a/twoweek-nightly.sh +++ b/twoweek-nightly.sh @@ -11,9 +11,9 @@ DEST=$(pwd) DATE=$(date "+%Y%m%d") # the Pungi 'shortname', which we will include in fedmsgs for disambiguation SHORT="Fedora-IoT" -RELEASE="42" -RELEASE_TITLE="42" -COMPSFILE="comps-f42.xml" +RELEASE="43" +RELEASE_TITLE="43" +COMPSFILE="comps-f43.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " From 69aa8633db787b80515872648f279d139ba8e531 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Thu, 6 Feb 2025 11:23:44 -0500 Subject: [PATCH 21/34] Make Osbuild deliverables failable again due to ongoing network issues in Koji. Signed-off-by: Paul Whalen --- fedora-iot.conf | 2 ++ 1 file changed, 2 insertions(+) diff --git a/fedora-iot.conf b/fedora-iot.conf index 4827cef..6084310 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -221,6 +221,7 @@ osbuild = { "ostree_url": "https://kojipkgs.fedoraproject.org/compose/iot/repo/", "ostree_ref": "fedora/rawhide/$arch/iot", "subvariant": "IoT", + "failable": ["*"], }, { "name": "%s-ostree" % release_name, @@ -233,6 +234,7 @@ osbuild = { "ostree_ref": "fedora/rawhide/$arch/iot", "subvariant": "IoT", "manifest_type": "dvd-ostree", + "failable": ["*"], }, { "name": "%s-provisioner" % release_name, From 2f94f34e05dab4a08ed96c440c0e906488fcb005 Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Mon, 7 Oct 2024 19:02:35 -0700 Subject: [PATCH 22/34] Build bootc images in IoT variant, tweak subvariants and names There's substantial history here, including https://pagure.io/fedora-infra/ansible/pull-request/2295 and the discussion in the PR for this commit - https://pagure.io/fedora-iot/pungi-iot/pull-request/102 . This is trying to make the metadata for these images accurate and informative. With this change, the variant for both images will be "IoT" and they will both appear in the IoT directory in the tree. The IoT image's subvariant will also be "IoT". The base image's subvariant will be "base". The format for both images will be "ociarchive", as it currently is. From tomorrow, the type for both images will be "bootable-container". The filename for the IoT image will start with "Fedora-IoT-bootc", and the filename for the base image will start with "Fedora-base-bootc". So we will have these basename - subvariant - type - formats: * Fedora-IoT-bootc - IoT - bootable-container - ociarchive * Fedora-base-bootc - base - bootable-container - ociarchive The base image can easily be moved into the main compose and maintain the same filename base, subvariant, type and format. It would have a different variant in that case, but in practice we do not use the variant for image identification purposes much anyway. Signed-off-by: Adam Williamson --- fedora-iot.conf | 43 ++++++++++++++++++++++++------------------- 1 file changed, 24 insertions(+), 19 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index 6084310..8deb7bc 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -22,7 +22,7 @@ sigkeys = ['31645531'] tree_arches = ['aarch64', 'x86_64', "ppc64le", "s390x"] # limit tree variants # if undefined, all variants from variants.xml will be included -tree_variants = ['IoT', 'bootc', 'bootc-base'] +tree_variants = ['IoT'] hashed_directories = True # RUNROOT settings @@ -275,24 +275,29 @@ ostree = { } ostree_container = { - "^bootc$": { - "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", - "config_url": "https://pagure.io/fedora-iot/base-images", - "config_branch": "main", - "treefile": "fedora-rawhide.yaml", - "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], - "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], - "failable": ['*'], - }, - "^bootc-base$": { - "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", - "config_url": "https://pagure.io/fedora-iot/fedora-iot-bootc.git", - "config_branch": "main", - "treefile": "fedora-iot-rawhide.yaml", - "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], - "arches": ["x86_64", "aarch64"], - "failable": ['*'], - }, + "^IoT$": [ + { + "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", + "config_url": "https://pagure.io/fedora-iot/base-images", + "config_branch": "main", + "treefile": "fedora-rawhide.yaml", + "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], + "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], + "failable": ['*'], + "name": "Fedora-IoT-bootc", + }, + { + "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", + "config_url": "https://pagure.io/fedora-iot/fedora-iot-bootc.git", + "config_branch": "main", + "treefile": "fedora-iot-rawhide.yaml", + "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], + "arches": ["x86_64", "aarch64"], + "failable": ['*'], + "subvariant": "base", + "name": "Fedora-base-bootc", + }, + ] } koji_profile = 'compose_koji' From 8be1b6f560606558ffeedead69f05249c9b36fd8 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Thu, 24 Apr 2025 12:27:25 -0400 Subject: [PATCH 23/34] Add s390x and ppc64le to iot variant to produce bootc containers The generic bootc container was added to the IoT section of the compose, since then s390x and ppc64le have started to fail. This adds those arches to the IoT section in variant.xml and removes the old variants. Signed-off-by: Paul Whalen --- variants-fedora.xml | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/variants-fedora.xml b/variants-fedora.xml index 9deb115..01f5f57 100644 --- a/variants-fedora.xml +++ b/variants-fedora.xml @@ -4,21 +4,9 @@ aarch64 - x86_64 - - - - - aarch64 - x86_64 - - - - - aarch64 - x86_64 - ppc64le - s390x + x86_64 + ppc64le + s390x From 9d606b1a54e109587f040da7677df400f089ea52 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Fri, 25 Apr 2025 17:04:40 -0400 Subject: [PATCH 24/34] Fix container names to reflect content in the image This fixes the container names to reflect the content in the image. Fedora-IoT-bootc - iot image Fedora-base-bootc - generic base image Signed-off-by: Paul Whalen --- fedora-iot.conf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index 8deb7bc..6b5118d 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -284,7 +284,8 @@ ostree_container = { "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], "arches": ["x86_64", "aarch64", "ppc64le", "s390x"], "failable": ['*'], - "name": "Fedora-IoT-bootc", + "subvariant": "base", + "name": "Fedora-base-bootc", }, { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", @@ -294,8 +295,7 @@ ostree_container = { "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], "arches": ["x86_64", "aarch64"], "failable": ['*'], - "subvariant": "base", - "name": "Fedora-base-bootc", + "name": "Fedora-IoT-bootc", }, ] } From f968bf20e9c8c72224123b979e6e99e6b034c68d Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Tue, 29 Apr 2025 09:31:03 -0400 Subject: [PATCH 25/34] Stop running the container sync script, replaced by cloud-image-uploader Signed-off-by: Paul Whalen --- twoweek-nightly.sh | 4 ---- 1 file changed, 4 deletions(-) diff --git a/twoweek-nightly.sh b/twoweek-nightly.sh index 8094fd8..560183d 100755 --- a/twoweek-nightly.sh +++ b/twoweek-nightly.sh @@ -69,10 +69,6 @@ for dir in IoT metadata ; $RSYNCPREFIX rsync -avhH --delete-after $DESTDIR/compose/$dir/ "$RSYNCTARGET/$dir/" ; $RSYNCPREFIX ./releng/scripts/build_composeinfo "$RSYNCTARGET/" --name $NEWCOMPOSE_ID done -# Push containers -./sync-bootc-base-containers.sh ${RELEASE} ${LABEL} -# Tell interested persons that the rsync is done. -send_fedmsg "${fedmsg_json_done}" ${RELEASE} rsync.complete # Tell everyone by fedmsg about the compose send_fedmsg "${fedmsg_json_done}" ${RELEASE} complete SUBJECT='Fedora '$RELEASE' compose report: '$SHORTCOMPOSE_ID' changes' From f59060737228432f4502b8853667de3775f35f54 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Wed, 6 Aug 2025 16:44:55 -0400 Subject: [PATCH 26/34] Update F43 to use new pungi imagebuilder configuration option See: https://fedoraproject.org/wiki/Changes/KojiLocalImageBuilder Signed-off-by: Paul Whalen --- fedora-iot.conf | 45 +++++++++++++++++++++++++-------------------- 1 file changed, 25 insertions(+), 20 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index 6b5118d..dc73fbe 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -209,44 +209,49 @@ global_version = '43' # live_images ignores this in favor of live_target global_target = 'f43' -osbuild = { +imagebuilder_target = 'f43-image-builder' +imagebuilder = { "^IoT$": [ { "name": "%s-raw" % release_name, - "distro": "fedora-43", - "image_types": ["iot-raw-image"], - "target": "f%s-candidate" % release_version, + "types": ["iot-raw-xz"], "arches": ["x86_64", "aarch64"], - "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$arch/os/"], - "ostree_url": "https://kojipkgs.fedoraproject.org/compose/iot/repo/", - "ostree_ref": "fedora/rawhide/$arch/iot", + "repos": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$arch/os/"], + "ostree": { + "url": "https://kojipkgs.fedoraproject.org/compose/iot/repo/", + "ref": "fedora/rawhide/$arch/iot", + }, "subvariant": "IoT", "failable": ["*"], }, { "name": "%s-ostree" % release_name, - "distro": "fedora-43", - "image_types": ["iot-installer"], - "target": "f%s-candidate" % release_version, + "types": ["iot-installer"], "arches": ["x86_64", "aarch64"], - "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$arch/os/"], - "ostree_url": "https://kojipkgs.fedoraproject.org/compose/iot/repo/", - "ostree_ref": "fedora/rawhide/$arch/iot", + "repos": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$arch/os/"], + "ostree": { + "url": "https://kojipkgs.fedoraproject.org/compose/iot/repo/", + "ref": "fedora/rawhide/$arch/iot", + }, "subvariant": "IoT", "manifest_type": "dvd-ostree", "failable": ["*"], }, { "name": "%s-provisioner" % release_name, - "distro": "fedora-43", - "image_types": ["iot-simplified-installer"], - "target": "f%s-candidate" % release_version, + "types": ["iot-simplified-installer"], "arches": ["x86_64", "aarch64"], - "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$arch/os/"], - "ostree_url": "https://kojipkgs.fedoraproject.org/compose/iot/repo/", - "ostree_ref": "fedora/rawhide/$arch/iot", + "repos": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$arch/os/"], + "ostree": { + "url": "https://kojipkgs.fedoraproject.org/compose/iot/repo/", + "ref": "fedora/rawhide/$arch/iot", + }, + "blueprint": { + "customizations": { + "installation_device": "/dev/vda1", + }, + }, "subvariant": "IoT_Simplified_Provisioner", - "customizations": {"installation_device": "/dev/vda"}, "failable": ["*"], "manifest_type": "dvd-ostree", }, From d23774204c6b7740a664a047eb48c95b26e4a6ef Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Tue, 12 Aug 2025 09:28:34 -0400 Subject: [PATCH 27/34] F-44: Update for branching Signed-off-by: Paul Whalen --- fedora-iot.conf | 20 ++++++++++---------- nightly.sh | 6 +++--- sync-release.sh | 8 ++++---- twoweek-nightly.sh | 6 +++--- 4 files changed, 20 insertions(+), 20 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index dc73fbe..9cda9d0 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -1,9 +1,9 @@ # PRODUCT INFO release_name = 'Fedora-IoT' release_short = 'Fedora-IoT' -release_version = '43' +release_version = '44' # Let's not build install media during this run. For the image builds -# and OSTree installer we'll use inputs from other f43 runs. +# and OSTree installer we'll use inputs from other f44 runs. skip_phases = ["buildinstall", "createrepo", "extra_files"] # GENERAL SETTINGS @@ -11,11 +11,11 @@ comps_file = { 'scm': 'git', 'repo': 'https://pagure.io/fedora-comps.git', 'branch': 'main', - 'file': 'comps-f43.xml', - 'command': 'make comps-f43.xml' + 'file': 'comps-f44.xml', + 'command': 'make comps-f44.xml' } variants_file='variants-fedora.xml' -sigkeys = ['31645531'] +sigkeys = ['6D9F90A6'] # limit tree architectures # if undefined, all architectures from variants.xml will be included @@ -27,7 +27,7 @@ hashed_directories = True # RUNROOT settings runroot_channel = 'compose' -runroot_tag = 'f43-build' +runroot_tag = 'f44-build' # PKGSET pkgset_source = 'koji' # koji, repos @@ -37,7 +37,7 @@ pkgset_source = 'koji' # koji, repos # pkgset_repos = {} # PKGSET - KOJI -pkgset_koji_tag = 'f43-iot' +pkgset_koji_tag = 'f44-iot' pkgset_koji_inherit = False filter_system_release_packages = False @@ -205,11 +205,11 @@ translate_paths = [ # These will be inherited by live_media, live_images and image_build global_ksurl = 'git+https://pagure.io/fedora-kickstarts.git?#HEAD' global_release = '!RELEASE_FROM_LABEL_DATE_TYPE_RESPIN' -global_version = '43' +global_version = '44' # live_images ignores this in favor of live_target -global_target = 'f43' +global_target = 'f44' -imagebuilder_target = 'f43-image-builder' +imagebuilder_target = 'f44-image-builder' imagebuilder = { "^IoT$": [ { diff --git a/nightly.sh b/nightly.sh index 343e11e..53d8229 100755 --- a/nightly.sh +++ b/nightly.sh @@ -9,9 +9,9 @@ SKIP_PHASES="--skip-phase=productimg" DEST=$(pwd) DATE=$(date "+%Y%m%d") SHORT="Fedora-IoT" -RELEASE="43" -RELEASE_TITLE="43" -COMPSFILE="comps-f43.xml" +RELEASE="44" +RELEASE_TITLE="44" +COMPSFILE="comps-f44.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " diff --git a/sync-release.sh b/sync-release.sh index 0999c92..953d1fb 100755 --- a/sync-release.sh +++ b/sync-release.sh @@ -12,14 +12,14 @@ DEST=$(pwd) DATE=$(date "+%Y%m%d") # the Pungi 'shortname', which we will include in fedmsgs for disambiguation SHORT="Fedora-IoT" -RELEASE="43" -RELEASE_TITLE="43" -COMPSFILE="comps-f43.xml" +RELEASE="44" +RELEASE_TITLE="44" +COMPSFILE="comps-f44.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " RSYNCPREFIX="sudo -u ftpsync" -RSYNCTARGET="/pub/alt/iot/43/" +RSYNCTARGET="/pub/alt/iot/44/" OLDCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) NEWCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) diff --git a/twoweek-nightly.sh b/twoweek-nightly.sh index 560183d..0cc7718 100755 --- a/twoweek-nightly.sh +++ b/twoweek-nightly.sh @@ -11,9 +11,9 @@ DEST=$(pwd) DATE=$(date "+%Y%m%d") # the Pungi 'shortname', which we will include in fedmsgs for disambiguation SHORT="Fedora-IoT" -RELEASE="43" -RELEASE_TITLE="43" -COMPSFILE="comps-f43.xml" +RELEASE="44" +RELEASE_TITLE="44" +COMPSFILE="comps-f44.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " From 29d8a41ea5c9ea25d81ce2c41e11741965f00d25 Mon Sep 17 00:00:00 2001 From: Anton Medvedev Date: Tue, 7 Oct 2025 21:35:53 +0200 Subject: [PATCH 28/34] ref: fix path effected by releng repo refactoring Signed-off-by: Anton Medvedev --- nightly.sh | 2 +- twoweek-nightly.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/nightly.sh b/nightly.sh index 53d8229..de83430 100755 --- a/nightly.sh +++ b/nightly.sh @@ -36,7 +36,7 @@ fi # Set up our fedmsg function, using the releng repo definition #FEDMSG_MODNAME="compose" #FEDMSG_CERTPREFIX="releng" -. ./releng/scripts/fedmsg-functions.sh +. ./releng/scripts_new/infrastructure/messaging/fedora_messaging.sh # Announce that we are starting, even though we don't know the compose_id yet.. #fedmsg_json_start=$(printf '{"log": "start", "branch": "%s", "arch": "%s", "short": "%s"}' "$RELEASE" "$ARCH" "$SHORT") diff --git a/twoweek-nightly.sh b/twoweek-nightly.sh index 0cc7718..4c012dd 100755 --- a/twoweek-nightly.sh +++ b/twoweek-nightly.sh @@ -34,7 +34,7 @@ fi fedmsg_json_start=$(printf '{"log": "start", "branch": "%s", "arch": "%s", "short": "%s"}' "$RELEASE" "$ARCH" "$SHORT") FEDMSG_MODNAME="compose" FEDMSG_CERTPREFIX="releng" -. ./releng/scripts/fedmsg-functions.sh +. ./releng/scripts_new/infrastructure/messaging/fedora_messaging.sh # Announce that we are starting... send_fedmsg "${fedmsg_json_start}" ${RELEASE} start CMD="pungi-koji --notification-script=/usr/bin/pungi-fedmsg-notification --notification-script=pungi-wait-for-signed-ostree-handler --config=$CONFIG --old-composes=$TARGET_DIR $OLD_COMPOSES_DIR $NIGHTLY --label=$LABEL" From 96a8f98dc4bd592cac0b40fc9477c58a769e1bf2 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Fri, 6 Feb 2026 13:12:22 -0500 Subject: [PATCH 29/34] F-45: Update for branching Signed-off-by: Paul Whalen --- fedora-iot.conf | 20 ++++++++++---------- nightly.sh | 6 +++--- sync-bootc-base-containers.sh | 4 ++-- sync-release.sh | 8 ++++---- twoweek-nightly.sh | 6 +++--- 5 files changed, 22 insertions(+), 22 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index 9cda9d0..f001679 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -1,9 +1,9 @@ # PRODUCT INFO release_name = 'Fedora-IoT' release_short = 'Fedora-IoT' -release_version = '44' +release_version = '45' # Let's not build install media during this run. For the image builds -# and OSTree installer we'll use inputs from other f44 runs. +# and OSTree installer we'll use inputs from other f45 runs. skip_phases = ["buildinstall", "createrepo", "extra_files"] # GENERAL SETTINGS @@ -11,11 +11,11 @@ comps_file = { 'scm': 'git', 'repo': 'https://pagure.io/fedora-comps.git', 'branch': 'main', - 'file': 'comps-f44.xml', - 'command': 'make comps-f44.xml' + 'file': 'comps-f45.xml', + 'command': 'make comps-f45.xml' } variants_file='variants-fedora.xml' -sigkeys = ['6D9F90A6'] +sigkeys = ['F577861E'] # limit tree architectures # if undefined, all architectures from variants.xml will be included @@ -27,7 +27,7 @@ hashed_directories = True # RUNROOT settings runroot_channel = 'compose' -runroot_tag = 'f44-build' +runroot_tag = 'f45-build' # PKGSET pkgset_source = 'koji' # koji, repos @@ -37,7 +37,7 @@ pkgset_source = 'koji' # koji, repos # pkgset_repos = {} # PKGSET - KOJI -pkgset_koji_tag = 'f44-iot' +pkgset_koji_tag = 'f45-iot' pkgset_koji_inherit = False filter_system_release_packages = False @@ -205,11 +205,11 @@ translate_paths = [ # These will be inherited by live_media, live_images and image_build global_ksurl = 'git+https://pagure.io/fedora-kickstarts.git?#HEAD' global_release = '!RELEASE_FROM_LABEL_DATE_TYPE_RESPIN' -global_version = '44' +global_version = '45' # live_images ignores this in favor of live_target -global_target = 'f44' +global_target = 'f45' -imagebuilder_target = 'f44-image-builder' +imagebuilder_target = 'f45-image-builder' imagebuilder = { "^IoT$": [ { diff --git a/nightly.sh b/nightly.sh index de83430..a28e1cb 100755 --- a/nightly.sh +++ b/nightly.sh @@ -9,9 +9,9 @@ SKIP_PHASES="--skip-phase=productimg" DEST=$(pwd) DATE=$(date "+%Y%m%d") SHORT="Fedora-IoT" -RELEASE="44" -RELEASE_TITLE="44" -COMPSFILE="comps-f44.xml" +RELEASE="45" +RELEASE_TITLE="45" +COMPSFILE="comps-f45.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " diff --git a/sync-bootc-base-containers.sh b/sync-bootc-base-containers.sh index 6a7e03f..06ad1fc 100755 --- a/sync-bootc-base-containers.sh +++ b/sync-bootc-base-containers.sh @@ -47,9 +47,9 @@ arch_to_goarch() { # This is the release of Fedora that is currently stable, it will define if we # need to move the fedora:latest tag -current_stable="41" +current_stable="43" # Define what is rawhide so we know to push that tag -current_rawhide="43" +current_rawhide="45" # Sanity checking if ! [[ "${1}" =~ ^-?[0-9]+$ ]]; then diff --git a/sync-release.sh b/sync-release.sh index 953d1fb..391d130 100755 --- a/sync-release.sh +++ b/sync-release.sh @@ -12,14 +12,14 @@ DEST=$(pwd) DATE=$(date "+%Y%m%d") # the Pungi 'shortname', which we will include in fedmsgs for disambiguation SHORT="Fedora-IoT" -RELEASE="44" -RELEASE_TITLE="44" -COMPSFILE="comps-f44.xml" +RELEASE="45" +RELEASE_TITLE="45" +COMPSFILE="comps-f45.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " RSYNCPREFIX="sudo -u ftpsync" -RSYNCTARGET="/pub/alt/iot/44/" +RSYNCTARGET="/pub/alt/iot/45/" OLDCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) NEWCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) diff --git a/twoweek-nightly.sh b/twoweek-nightly.sh index 4c012dd..3d8225b 100755 --- a/twoweek-nightly.sh +++ b/twoweek-nightly.sh @@ -11,9 +11,9 @@ DEST=$(pwd) DATE=$(date "+%Y%m%d") # the Pungi 'shortname', which we will include in fedmsgs for disambiguation SHORT="Fedora-IoT" -RELEASE="44" -RELEASE_TITLE="44" -COMPSFILE="comps-f44.xml" +RELEASE="45" +RELEASE_TITLE="45" +COMPSFILE="comps-f45.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " From 087fe9f286ca2c3249b8fa3590855317ae987bb8 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Fri, 6 Feb 2026 15:13:08 -0500 Subject: [PATCH 30/34] fix: fedora-kickstarts retired Signed-off-by: Paul Whalen --- fedora-iot.conf | 6 ------ 1 file changed, 6 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index f001679..709d616 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -202,12 +202,6 @@ translate_paths = [ ('/mnt/koji/compose/', 'https://kojipkgs.fedoraproject.org/compose/'), ] -# These will be inherited by live_media, live_images and image_build -global_ksurl = 'git+https://pagure.io/fedora-kickstarts.git?#HEAD' -global_release = '!RELEASE_FROM_LABEL_DATE_TYPE_RESPIN' -global_version = '45' -# live_images ignores this in favor of live_target -global_target = 'f45' imagebuilder_target = 'f45-image-builder' imagebuilder = { From 4186f8b817a4cc0a71bf29408c79a761abbc4a4c Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Mon, 27 Apr 2026 23:46:23 -0700 Subject: [PATCH 31/34] Restore global_release, global_version, global_target It's not entirely obvious, but these were not in fact tied to the old livemedia phase as 087fe9f thought; they are used by modern phases like imagebuilder and kiwi as well. Restore them, with a less misleading comment. Fixes: https://github.com/fedora-iot/iot-distro/issues/131 Signed-off-by: Adam Williamson --- fedora-iot.conf | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/fedora-iot.conf b/fedora-iot.conf index 709d616..ce60e8e 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -202,6 +202,10 @@ translate_paths = [ ('/mnt/koji/compose/', 'https://kojipkgs.fedoraproject.org/compose/'), ] +# These may be inherited by various phases for creating Koji tasks +global_release = '!RELEASE_FROM_LABEL_DATE_TYPE_RESPIN' +global_version = '45' +global_target = 'f45' imagebuilder_target = 'f45-image-builder' imagebuilder = { From 5fe5764dbad29ffc382eb7dcfea12f7c07b9c109 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Tue, 28 Jul 2026 16:01:37 -0400 Subject: [PATCH 32/34] Update Pagure URLs to Forge for IoT compose - fedora-iot.conf: Update comps_file, ostree, and ostree_container config_urls to forge.fedoraproject.org (fedora-comps, ostree, base-images, fedora-iot-bootc) - fedora-iot.conf: Update pungi-fedora PR/issue comment links - nightly.sh: Update releng and fedora-comps clone URLs - twoweek-nightly.sh: Update releng clone URL Assisted-by: Claude Opus 4.6 Signed-off-by: Paul Whalen --- fedora-iot.conf | 12 ++++++------ nightly.sh | 4 ++-- twoweek-nightly.sh | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index ce60e8e..fe7c0d3 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -9,7 +9,7 @@ skip_phases = ["buildinstall", "createrepo", "extra_files"] # GENERAL SETTINGS comps_file = { 'scm': 'git', - 'repo': 'https://pagure.io/fedora-comps.git', + 'repo': 'https://forge.fedoraproject.org/releng/fedora-comps.git', 'branch': 'main', 'file': 'comps-f45.xml', 'command': 'make comps-f45.xml' @@ -166,7 +166,7 @@ image_volid_layered_product_formats = [] # allow Pungi to tell it what volume ID to use. Note: # https://fedoraproject.org/wiki/User:Adamwill/Draft_fedora_image_naming_policy # '-Workstation-' is a temporary workaround. See -# https://pagure.io/pungi-fedora/pull-request/525 +# https://forge.fedoraproject.org/releng/pungi-fedora/pulls/525 volume_id_substitutions = { 'Beta': 'B', 'Rawhide': 'rawh', @@ -183,7 +183,7 @@ volume_id_substitutions = { 'IoT': 'iot', 'Jam_KDE': 'Jam', 'MATE_Compiz': 'MATE', - # Note https://pagure.io/pungi-fedora/issue/533 + # Note https://forge.fedoraproject.org/releng/pungi-fedora/issues/533 'Python-Classroom': 'Clss', 'Python_Classroom': 'Clss', 'Robotics': 'Robo', @@ -262,7 +262,7 @@ ostree = { "force_new_commit": True, "unified_core": True, "treefile": "fedora-iot.yaml", - "config_url": "https://pagure.io/fedora-iot/ostree.git", + "config_url": "https://forge.fedoraproject.org/iot/ostree.git", "config_branch": "main", "repo": [ "IoT", @@ -281,7 +281,7 @@ ostree_container = { "^IoT$": [ { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", - "config_url": "https://pagure.io/fedora-iot/base-images", + "config_url": "https://forge.fedoraproject.org/iot/base-images.git", "config_branch": "main", "treefile": "fedora-rawhide.yaml", "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], @@ -292,7 +292,7 @@ ostree_container = { }, { "version": "!OSTREE_VERSION_FROM_LABEL_DATE_TYPE_RESPIN", - "config_url": "https://pagure.io/fedora-iot/fedora-iot-bootc.git", + "config_url": "https://forge.fedoraproject.org/iot/fedora-iot-bootc.git", "config_branch": "main", "treefile": "fedora-iot-rawhide.yaml", "repo": ["https://kojipkgs.fedoraproject.org/compose/rawhide/latest-Fedora-Rawhide/compose/Everything/$basearch/os/"], diff --git a/nightly.sh b/nightly.sh index a28e1cb..ea54ab7 100755 --- a/nightly.sh +++ b/nightly.sh @@ -30,7 +30,7 @@ if [ -d releng ]; then git pull --rebase popd else - git clone https://pagure.io/releng.git + git clone https://forge.fedoraproject.org/releng/tooling.git releng fi # Set up our fedmsg function, using the releng repo definition @@ -43,7 +43,7 @@ fi #send_fedmsg "${fedmsg_json_start}" ${RELEASE} start #pushd $TMPDIR -#git clone https://pagure.io/fedora-comps.git && { +#git clone https://forge.fedoraproject.org/releng/fedora-comps.git && { # pushd fedora-comps # make "${COMPSFILE}" # cp "${COMPSFILE}" $DEST/ diff --git a/twoweek-nightly.sh b/twoweek-nightly.sh index 3d8225b..6dc5a62 100755 --- a/twoweek-nightly.sh +++ b/twoweek-nightly.sh @@ -28,7 +28,7 @@ if [ -d releng ]; then git pull --rebase popd else - git clone https://pagure.io/releng.git + git clone https://forge.fedoraproject.org/releng/tooling.git releng fi # Set up our fedmsg function, using the releng repo definition fedmsg_json_start=$(printf '{"log": "start", "branch": "%s", "arch": "%s", "short": "%s"}' "$RELEASE" "$ARCH" "$SHORT") From e8f17b68c4670aee848f878d63184acb84d5b11f Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Wed, 29 Jul 2026 10:51:09 -0400 Subject: [PATCH 33/34] Update releng script paths for tooling repo restructure MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - nightly.sh: Update fedora_messaging.sh path (scripts_new/ → no prefix) - nightly.sh: Update build_composeinfo path (scripts/ → builds/compose/) - twoweek-nightly.sh: Update fedora_messaging.sh path (scripts_new/ → no prefix) - twoweek-nightly.sh: Update build_composeinfo path (scripts/ → builds/compose/) Assisted-by: Claude Opus 4.6 Signed-off-by: Paul Whalen --- nightly.sh | 4 ++-- twoweek-nightly.sh | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/nightly.sh b/nightly.sh index ea54ab7..4859e4b 100755 --- a/nightly.sh +++ b/nightly.sh @@ -36,7 +36,7 @@ fi # Set up our fedmsg function, using the releng repo definition #FEDMSG_MODNAME="compose" #FEDMSG_CERTPREFIX="releng" -. ./releng/scripts_new/infrastructure/messaging/fedora_messaging.sh +. ./releng/infrastructure/messaging/fedora_messaging.sh # Announce that we are starting, even though we don't know the compose_id yet.. #fedmsg_json_start=$(printf '{"log": "start", "branch": "%s", "arch": "%s", "short": "%s"}' "$RELEASE" "$ARCH" "$SHORT") @@ -67,7 +67,7 @@ fi NEWCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) SHORTCOMPOSE_ID=$(echo $NEWCOMPOSE_ID|sed -e 's|Fedora-.*-||g') -./releng/scripts/build_composeinfo "$TARGET_DIR/$NEWCOMPOSE_ID/" --name "$NEWCOMPOSE_ID" +./releng/builds/compose/build_composeinfo.py "$TARGET_DIR/$NEWCOMPOSE_ID/" --name "$NEWCOMPOSE_ID" # Set this to use later for a few items include depcheck DESTDIR=$TARGET_DIR/$NEWCOMPOSE_ID diff --git a/twoweek-nightly.sh b/twoweek-nightly.sh index 6dc5a62..642e30d 100755 --- a/twoweek-nightly.sh +++ b/twoweek-nightly.sh @@ -34,7 +34,7 @@ fi fedmsg_json_start=$(printf '{"log": "start", "branch": "%s", "arch": "%s", "short": "%s"}' "$RELEASE" "$ARCH" "$SHORT") FEDMSG_MODNAME="compose" FEDMSG_CERTPREFIX="releng" -. ./releng/scripts_new/infrastructure/messaging/fedora_messaging.sh +. ./releng/infrastructure/messaging/fedora_messaging.sh # Announce that we are starting... send_fedmsg "${fedmsg_json_start}" ${RELEASE} start CMD="pungi-koji --notification-script=/usr/bin/pungi-fedmsg-notification --notification-script=pungi-wait-for-signed-ostree-handler --config=$CONFIG --old-composes=$TARGET_DIR $OLD_COMPOSES_DIR $NIGHTLY --label=$LABEL" @@ -52,7 +52,7 @@ ostree summary --update --repo=/mnt/koji/compose/iot/repo/ NEWCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) SHORTCOMPOSE_ID=$(echo $NEWCOMPOSE_ID|sed -e 's|Fedora-.*-||g') -./releng/scripts/build_composeinfo "$TARGET_DIR/$NEWCOMPOSE_ID/" --name "$NEWCOMPOSE_ID" +./releng/builds/compose/build_composeinfo.py "$TARGET_DIR/$NEWCOMPOSE_ID/" --name "$NEWCOMPOSE_ID" DESTDIR=$TARGET_DIR/$NEWCOMPOSE_ID # Public URL the synced compose will wind up at, we put it in fedmsgs @@ -67,7 +67,7 @@ send_fedmsg "${fedmsg_json_start}" ${RELEASE} rsync.start for dir in IoT metadata ; do $RSYNCPREFIX rsync -avhH --delete-after $DESTDIR/compose/$dir/ "$RSYNCTARGET/$dir/" ; - $RSYNCPREFIX ./releng/scripts/build_composeinfo "$RSYNCTARGET/" --name $NEWCOMPOSE_ID + $RSYNCPREFIX ./releng/builds/compose/build_composeinfo.py "$RSYNCTARGET/" --name $NEWCOMPOSE_ID done # Tell everyone by fedmsg about the compose send_fedmsg "${fedmsg_json_done}" ${RELEASE} complete From 3d9cd16f820df2fe268931157d2c3447d5bc7094 Mon Sep 17 00:00:00 2001 From: Paul Whalen Date: Wed, 12 Aug 2026 10:17:54 -0400 Subject: [PATCH 34/34] Bump rawhide to Fedora 46 --- fedora-iot.conf | 18 +++++++++--------- nightly.sh | 6 +++--- sync-bootc-base-containers.sh | 4 ++-- sync-release.sh | 8 ++++---- twoweek-nightly.sh | 6 +++--- 5 files changed, 21 insertions(+), 21 deletions(-) diff --git a/fedora-iot.conf b/fedora-iot.conf index fe7c0d3..a3a3c10 100644 --- a/fedora-iot.conf +++ b/fedora-iot.conf @@ -1,7 +1,7 @@ # PRODUCT INFO release_name = 'Fedora-IoT' release_short = 'Fedora-IoT' -release_version = '45' +release_version = '46' # Let's not build install media during this run. For the image builds # and OSTree installer we'll use inputs from other f45 runs. skip_phases = ["buildinstall", "createrepo", "extra_files"] @@ -11,11 +11,11 @@ comps_file = { 'scm': 'git', 'repo': 'https://forge.fedoraproject.org/releng/fedora-comps.git', 'branch': 'main', - 'file': 'comps-f45.xml', - 'command': 'make comps-f45.xml' + 'file': 'comps-f46.xml', + 'command': 'make comps-f46.xml' } variants_file='variants-fedora.xml' -sigkeys = ['F577861E'] +sigkeys = ['91211FCE'] # limit tree architectures # if undefined, all architectures from variants.xml will be included @@ -27,7 +27,7 @@ hashed_directories = True # RUNROOT settings runroot_channel = 'compose' -runroot_tag = 'f45-build' +runroot_tag = 'f46-build' # PKGSET pkgset_source = 'koji' # koji, repos @@ -37,7 +37,7 @@ pkgset_source = 'koji' # koji, repos # pkgset_repos = {} # PKGSET - KOJI -pkgset_koji_tag = 'f45-iot' +pkgset_koji_tag = 'f46-iot' pkgset_koji_inherit = False filter_system_release_packages = False @@ -204,10 +204,10 @@ translate_paths = [ # These may be inherited by various phases for creating Koji tasks global_release = '!RELEASE_FROM_LABEL_DATE_TYPE_RESPIN' -global_version = '45' -global_target = 'f45' +global_version = '46' +global_target = 'f46' -imagebuilder_target = 'f45-image-builder' +imagebuilder_target = 'f46-image-builder' imagebuilder = { "^IoT$": [ { diff --git a/nightly.sh b/nightly.sh index 4859e4b..fa8dfcb 100755 --- a/nightly.sh +++ b/nightly.sh @@ -9,9 +9,9 @@ SKIP_PHASES="--skip-phase=productimg" DEST=$(pwd) DATE=$(date "+%Y%m%d") SHORT="Fedora-IoT" -RELEASE="45" -RELEASE_TITLE="45" -COMPSFILE="comps-f45.xml" +RELEASE="46" +RELEASE_TITLE="46" +COMPSFILE="comps-f46.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " diff --git a/sync-bootc-base-containers.sh b/sync-bootc-base-containers.sh index 06ad1fc..ebab8ee 100755 --- a/sync-bootc-base-containers.sh +++ b/sync-bootc-base-containers.sh @@ -47,9 +47,9 @@ arch_to_goarch() { # This is the release of Fedora that is currently stable, it will define if we # need to move the fedora:latest tag -current_stable="43" +current_stable="44" # Define what is rawhide so we know to push that tag -current_rawhide="45" +current_rawhide="46" # Sanity checking if ! [[ "${1}" =~ ^-?[0-9]+$ ]]; then diff --git a/sync-release.sh b/sync-release.sh index 391d130..5badf8c 100755 --- a/sync-release.sh +++ b/sync-release.sh @@ -12,14 +12,14 @@ DEST=$(pwd) DATE=$(date "+%Y%m%d") # the Pungi 'shortname', which we will include in fedmsgs for disambiguation SHORT="Fedora-IoT" -RELEASE="45" -RELEASE_TITLE="45" -COMPSFILE="comps-f45.xml" +RELEASE="46" +RELEASE_TITLE="46" +COMPSFILE="comps-f46.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report " RSYNCPREFIX="sudo -u ftpsync" -RSYNCTARGET="/pub/alt/iot/45/" +RSYNCTARGET="/pub/alt/iot/46/" OLDCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) NEWCOMPOSE_ID=$(cat $TARGET_DIR/latest-$SHORT-$RELEASE_TITLE/COMPOSE_ID) diff --git a/twoweek-nightly.sh b/twoweek-nightly.sh index 642e30d..c0925c7 100755 --- a/twoweek-nightly.sh +++ b/twoweek-nightly.sh @@ -11,9 +11,9 @@ DEST=$(pwd) DATE=$(date "+%Y%m%d") # the Pungi 'shortname', which we will include in fedmsgs for disambiguation SHORT="Fedora-IoT" -RELEASE="45" -RELEASE_TITLE="45" -COMPSFILE="comps-f45.xml" +RELEASE="46" +RELEASE_TITLE="46" +COMPSFILE="comps-f46.xml" TMPDIR=`mktemp -d /tmp/$RELEASE.$DATE.XXXX` TOMAIL="iot@lists.fedoraproject.org" FROM="Fedora IoT Report "