From 99e4ded4f05aaf35de7e5be7cdf5e05c84bd9f44 Mon Sep 17 00:00:00 2001 From: Alejandro Gullon Date: Fri, 19 Dec 2025 13:21:11 +0100 Subject: [PATCH 1/9] add support on releases scenarios to use artifacts from konflux --- test/assets/common_versions.sh.template | 55 +++++++++++++++-- test/bin/common_versions.sh | 55 +++++++++++++++-- .../group3/rhel96-lrel-optionals-tuned.toml | 10 ++-- .../el96-crel@published-images-standard1.sh | 59 ------------------- .../el96-crel@published-images-standard2.sh | 58 ------------------ .../el96-lrel@konflux-images-standard1.sh | 35 +++++++++++ .../el96-lrel@konflux-images-standard2.sh | 34 +++++++++++ .../releases/el96@rpm-install-upgrade.sh | 2 +- test/scenarios/releases/el96@rpm-standard1.sh | 2 +- test/scenarios/releases/el96@rpm-standard2.sh | 2 +- 10 files changed, 177 insertions(+), 135 deletions(-) delete mode 100644 test/scenarios-bootc/releases/el96-crel@published-images-standard1.sh delete mode 100644 test/scenarios-bootc/releases/el96-crel@published-images-standard2.sh create mode 100644 test/scenarios-bootc/releases/el96-lrel@konflux-images-standard1.sh create mode 100644 test/scenarios-bootc/releases/el96-lrel@konflux-images-standard2.sh diff --git a/test/assets/common_versions.sh.template b/test/assets/common_versions.sh.template index ea466553a3..5daa9b3087 100644 --- a/test/assets/common_versions.sh.template +++ b/test/assets/common_versions.sh.template @@ -68,6 +68,47 @@ get_vrel_from_rpm() {{ echo "" }} +get_redhat_bootc_image_url() {{ + local -r registry="$1" + local -r release_version="$2" + local image_url="" + + # get arch + local arch="" + if [ "${{UNAME_M}}" = "x86_64" ]; then + arch="amd64" + elif [ "${{UNAME_M}}" = "aarch64" ]; then + arch="arm64" + fi + + sha_id=$(skopeo inspect --raw "docker://${{registry}}/openshift4/microshift-bootc-rhel9:v${{release_version}}" | \ + jq -r ".manifests[] | select(.platform.architecture==\"${{arch}}\") | .digest" 2>/dev/null) + if [[ "${{sha_id}}" =~ ^sha256:[0-9a-f]{{64}}$ ]]; then + image_url="${{registry}}/openshift4/microshift-bootc-rhel9@${{sha_id}}" + fi + echo "${{image_url}}" +}} + +get_lrel_release_image_url() {{ + local -r release_type="$1" + local -r release_version="$2" + local image_url="" + + if [[ "${{release_type}}" == "ec" ]]; then + image_url="$(curl -s "https://mirror.openshift.com/pub/openshift-v4/${{UNAME_M}}/microshift/ocp-dev-preview/${{release_version}}/el9/bootc-pullspec.txt")" + elif [[ "${{release_type}}" == "rc" ]]; then + image_url="$(curl -s "https://mirror.openshift.com/pub/openshift-v4/${{UNAME_M}}/microshift/ocp/${{release_version}}/el9/bootc-pullspec.txt")" + elif [[ "${{release_type}}" == "zstream" ]]; then + for registry in "registry.redhat.io" "registry.stage.redhat.io"; do + image_url="$(get_redhat_bootc_image_url "${{registry}}" "${{release_version}}")" + if [ -n "${{image_url}}" ]; then + break + fi + done + fi + echo "${{image_url}}" +}} + # The current release minor version (e.g. '17' for '4.17') affects # the definition of previous and fake next versions. export MINOR_VERSION={minor_version} @@ -155,12 +196,16 @@ export BREW_RC_RELEASE_VERSION export BREW_EC_RELEASE_VERSION export BREW_NIGHTLY_RELEASE_VERSION -# Set the release type to ec, rc or zstream -LATEST_RELEASE_TYPE="{LATEST_RELEASE_TYPE}" -export LATEST_RELEASE_TYPE +# Latest Release info +LATEST_RELEASE_TYPE="ec" # ec, rc or zstream +BREW_LATEST_RELEASE_VERSION="${{BREW_EC_RELEASE_VERSION}}" # BREW_EC_RELEASE_VERSION, BREW_RC_RELEASE_VERSION or BREW_Y0_RELEASE_VERSION +LATEST_RELEASE_VERSION="$(echo "${{BREW_LATEST_RELEASE_VERSION}}" | sed -E 's/(.*)-.*/\1/' | sed -E 's/(.*)~(.*)/\1-\2/')" # example: 4.19.7 or 4.20.0-rc.3 +LATEST_RELEASE_IMAGE_URL="$(get_lrel_release_image_url "${{LATEST_RELEASE_TYPE}}" "${{LATEST_RELEASE_VERSION}}")" -BREW_LREL_RELEASE_VERSION="${{BREW_EC_RELEASE_VERSION}}" -export BREW_LREL_RELEASE_VERSION +export LATEST_RELEASE_TYPE +export BREW_LATEST_RELEASE_VERSION +export LATEST_RELEASE_VERSION +export LATEST_RELEASE_IMAGE_URL # Branch and commit for the openshift-tests-private repository OPENSHIFT_TESTS_PRIVATE_REPO_BRANCH="release-4.${{MINOR_VERSION}}" diff --git a/test/bin/common_versions.sh b/test/bin/common_versions.sh index 9dc4d61879..ba567953be 100644 --- a/test/bin/common_versions.sh +++ b/test/bin/common_versions.sh @@ -68,6 +68,47 @@ get_vrel_from_rpm() { echo "" } +get_redhat_bootc_image_url() { + local -r registry="$1" + local -r release_version="$2" + local image_url="" + + # get arch + local arch="" + if [ "${UNAME_M}" = "x86_64" ]; then + arch="amd64" + elif [ "${UNAME_M}" = "aarch64" ]; then + arch="arm64" + fi + + sha_id=$(skopeo inspect --raw "docker://${registry}/openshift4/microshift-bootc-rhel9:v${release_version}" | \ + jq -r ".manifests[] | select(.platform.architecture==\"${arch}\") | .digest" 2>/dev/null) + if [[ "${sha_id}" =~ ^sha256:[0-9a-f]{64}$ ]]; then + image_url="${registry}/openshift4/microshift-bootc-rhel9@${sha_id}" + fi + echo "${image_url}" +} + +get_lrel_release_image_url() { + local -r release_type="$1" + local -r release_version="$2" + local image_url="" + + if [[ "${release_type}" == "ec" ]]; then + image_url="$(curl -s "https://mirror.openshift.com/pub/openshift-v4/${UNAME_M}/microshift/ocp-dev-preview/${release_version}/el9/bootc-pullspec.txt")" + elif [[ "${release_type}" == "rc" ]]; then + image_url="$(curl -s "https://mirror.openshift.com/pub/openshift-v4/${UNAME_M}/microshift/ocp/${release_version}/el9/bootc-pullspec.txt")" + elif [[ "${release_type}" == "zstream" ]]; then + for registry in "registry.redhat.io" "registry.stage.redhat.io"; do + image_url="$(get_redhat_bootc_image_url "${registry}" "${release_version}")" + if [ -n "${image_url}" ]; then + break + fi + done + fi + echo "${image_url}" +} + # The current release minor version (e.g. '17' for '4.17') affects # the definition of previous and fake next versions. export MINOR_VERSION=21 @@ -155,12 +196,16 @@ export BREW_RC_RELEASE_VERSION export BREW_EC_RELEASE_VERSION export BREW_NIGHTLY_RELEASE_VERSION -# Set the release type to ec, rc or zstream -LATEST_RELEASE_TYPE="ec" -export LATEST_RELEASE_TYPE +# Latest Release info +LATEST_RELEASE_TYPE="ec" # ec, rc or zstream +BREW_LATEST_RELEASE_VERSION="${BREW_EC_RELEASE_VERSION}" # BREW_EC_RELEASE_VERSION, BREW_RC_RELEASE_VERSION or BREW_Y0_RELEASE_VERSION +LATEST_RELEASE_VERSION="$(echo "${BREW_LATEST_RELEASE_VERSION}" | sed -E 's/(.*)-.*/\1/' | sed -E 's/(.*)~(.*)/\1-\2/')" # example: 4.19.7 or 4.20.0-rc.3 +LATEST_RELEASE_IMAGE_URL="$(get_lrel_release_image_url "${LATEST_RELEASE_TYPE}" "${LATEST_RELEASE_VERSION}")" -BREW_LREL_RELEASE_VERSION="${BREW_EC_RELEASE_VERSION}" -export BREW_LREL_RELEASE_VERSION +export LATEST_RELEASE_TYPE +export BREW_LATEST_RELEASE_VERSION +export LATEST_RELEASE_VERSION +export LATEST_RELEASE_IMAGE_URL # Branch and commit for the openshift-tests-private repository OPENSHIFT_TESTS_PRIVATE_REPO_BRANCH="release-4.${MINOR_VERSION}" diff --git a/test/image-blueprints/layer4-release/group3/rhel96-lrel-optionals-tuned.toml b/test/image-blueprints/layer4-release/group3/rhel96-lrel-optionals-tuned.toml index 1ed32e9db6..ff976082e7 100644 --- a/test/image-blueprints/layer4-release/group3/rhel96-lrel-optionals-tuned.toml +++ b/test/image-blueprints/layer4-release/group3/rhel96-lrel-optionals-tuned.toml @@ -1,4 +1,4 @@ -{{- if and (env.Getenv "BREW_LREL_RELEASE_VERSION" "") (env.Getenv "BREW_Y1_RELEASE_VERSION" "") -}} +{{- if and (env.Getenv "BREW_LATEST_RELEASE_VERSION" "") (env.Getenv "BREW_Y1_RELEASE_VERSION" "") -}} {{- /* We wrap this template in a test so that the body of the output is @@ -9,7 +9,7 @@ */ -}} name = "rhel-9.6-microshift-brew-tuned-4.{{ .Env.MINOR_VERSION}}-{{ .Env.LATEST_RELEASE_TYPE}}" -description = "A RHEL 9.6 image with already built and released RPMs like EC, RC, or Z-stream release: {{ .Env.BREW_LREL_RELEASE_VERSION }}" +description = "A RHEL 9.6 image with already built and released RPMs like EC, RC, or Z-stream release: {{ .Env.BREW_LATEST_RELEASE_VERSION }}" version = "0.0.1" modules = [] groups = [] @@ -22,20 +22,20 @@ distro = "rhel-96" {{ range (env.Getenv "MICROSHIFT_MANDATORY_RPMS" | strings.Split " ") }} [[packages]] name = "{{ . }}" -version = "{{ env.Getenv "BREW_LREL_RELEASE_VERSION" }}" +version = "{{ env.Getenv "BREW_LATEST_RELEASE_VERSION" }}" {{ end }} {{ range (env.Getenv "MICROSHIFT_OPTIONAL_RPMS" | strings.Split " ") }} [[packages]] name = "{{ . }}" -version = "{{ env.Getenv "BREW_LREL_RELEASE_VERSION" }}" +version = "{{ env.Getenv "BREW_LATEST_RELEASE_VERSION" }}" {{ end }} {{- if and (env.Getenv "UNAME_M" "") (eq "x86_64" .Env.UNAME_M) }} {{ range (env.Getenv "MICROSHIFT_X86_64_RPMS" | strings.Split " ") }} [[packages]] name = "{{ . }}" -version = "{{ env.Getenv "BREW_LREL_RELEASE_VERSION" }}" +version = "{{ env.Getenv "BREW_LATEST_RELEASE_VERSION" }}" {{ end }} {{- end }} diff --git a/test/scenarios-bootc/releases/el96-crel@published-images-standard1.sh b/test/scenarios-bootc/releases/el96-crel@published-images-standard1.sh deleted file mode 100644 index 1dc7fa555d..0000000000 --- a/test/scenarios-bootc/releases/el96-crel@published-images-standard1.sh +++ /dev/null @@ -1,59 +0,0 @@ -#!/bin/bash - -# Sourced from scenario.sh and uses functions defined there. - -# Enable container signature verification for published MicroShift images. -# These are ec / rc / z-stream, thus guaranteed to be signed. -# shellcheck disable=SC2034 # used elsewhere -IMAGE_SIGSTORE_ENABLED=true - -scenario_create_vms() { - if [[ "${CURRENT_RELEASE_REPO}" == "" ]] ; then - # Empty string means there's no EC build yet, so the test needs to be skipped. - exit 0 - fi - - local bootc_spec - if [[ "${CURRENT_RELEASE_REPO}" == http* ]] ; then - # Discover a pre-release MicroShift bootc image reference on the mirror - local -r mirror_url="$(dirname "${CURRENT_RELEASE_REPO}")/bootc-pullspec.txt" - - bootc_spec="$(curl -s "${mirror_url}")" - if [ -z "${bootc_spec}" ] || [[ "${bootc_spec}" != quay.io/openshift* ]] ; then - echo "ERROR: Failed to retrieve a bootc pull spec from '${mirror_url}'" - exit 1 - fi - else - # Use the latest released MicroShift bootc image reference in public - # registry for the current minor version - bootc_spec="registry.redhat.io/openshift4/microshift-bootc-rhel9:v4.${MINOR_VERSION}" - fi - - prepare_kickstart host1 kickstart-bootc.ks.template "${bootc_spec}" - launch_vm --boot_blueprint rhel96-bootc - - # Open the firewall ports. Other scenarios get this behavior by embedding - # settings in the blueprint, but we cannot open firewall ports in published - # images. We need to do this step before running the RF suite so that suite - # can assume it can reach all of the same ports as for any other test. - configure_vm_firewall host1 -} - -scenario_remove_vms() { - if [[ "${CURRENT_RELEASE_REPO}" == "" ]] ; then - # Empty string means there's no EC build yet, so the test needs to be skipped. - exit 0 - fi - remove_vm host1 -} - -scenario_run_tests() { - if [[ "${CURRENT_RELEASE_REPO}" == "" ]] ; then - # Empty string means there's no EC build yet, so the test needs to be skipped. - exit 0 - fi - run_tests host1 \ - --variable "EXPECTED_OS_VERSION:9.6" \ - --variable "IMAGE_SIGSTORE_ENABLED:True" \ - suites/standard1/ suites/selinux/validate-selinux-policy.robot -} diff --git a/test/scenarios-bootc/releases/el96-crel@published-images-standard2.sh b/test/scenarios-bootc/releases/el96-crel@published-images-standard2.sh deleted file mode 100644 index ddd3b448c9..0000000000 --- a/test/scenarios-bootc/releases/el96-crel@published-images-standard2.sh +++ /dev/null @@ -1,58 +0,0 @@ -#!/bin/bash - -# Sourced from scenario.sh and uses functions defined there. - -# Enable container signature verification for published MicroShift images. -# These are ec / rc / z-stream, thus guaranteed to be signed. -# shellcheck disable=SC2034 # used elsewhere -IMAGE_SIGSTORE_ENABLED=true - -scenario_create_vms() { - if [[ "${CURRENT_RELEASE_REPO}" == "" ]] ; then - # Empty string means there's no EC build yet, so the test needs to be skipped. - exit 0 - fi - - local bootc_spec - if [[ "${CURRENT_RELEASE_REPO}" == http* ]] ; then - # Discover a pre-release MicroShift bootc image reference on the mirror - local -r mirror_url="$(dirname "${CURRENT_RELEASE_REPO}")/bootc-pullspec.txt" - - bootc_spec="$(curl -s "${mirror_url}")" - if [ -z "${bootc_spec}" ] || [[ "${bootc_spec}" != quay.io/openshift* ]] ; then - echo "ERROR: Failed to retrieve a bootc pull spec from '${mirror_url}'" - exit 1 - fi - else - # Use the latest released MicroShift bootc image reference in public - # registry for the current minor version - bootc_spec="registry.redhat.io/openshift4/microshift-bootc-rhel9:v4.${MINOR_VERSION}" - fi - - prepare_kickstart host1 kickstart-bootc.ks.template "${bootc_spec}" - launch_vm --boot_blueprint rhel96-bootc - - # Open the firewall ports. Other scenarios get this behavior by embedding - # settings in the blueprint, but we cannot open firewall ports in published - # images. We need to do this step before running the RF suite so that suite - # can assume it can reach all of the same ports as for any other test. - configure_vm_firewall host1 -} - -scenario_remove_vms() { - if [[ "${CURRENT_RELEASE_REPO}" == "" ]] ; then - # Empty string means there's no EC build yet, so the test needs to be skipped. - exit 0 - fi - remove_vm host1 -} - -scenario_run_tests() { - if [[ "${CURRENT_RELEASE_REPO}" == "" ]] ; then - # Empty string means there's no EC build yet, so the test needs to be skipped. - exit 0 - fi - run_tests host1 \ - --variable "IMAGE_SIGSTORE_ENABLED:True" \ - suites/standard2/ -} diff --git a/test/scenarios-bootc/releases/el96-lrel@konflux-images-standard1.sh b/test/scenarios-bootc/releases/el96-lrel@konflux-images-standard1.sh new file mode 100644 index 0000000000..10f2b4e6d9 --- /dev/null +++ b/test/scenarios-bootc/releases/el96-lrel@konflux-images-standard1.sh @@ -0,0 +1,35 @@ +#!/bin/bash + +# Sourced from scenario.sh and uses functions defined there. + +# Enable container signature verification for published MicroShift images. +# These are ec / rc / zstream, thus guaranteed to be signed. +# shellcheck disable=SC2034 # used elsewhere +IMAGE_SIGSTORE_ENABLED=true + +scenario_create_vms() { + if [ -z "${LATEST_RELEASE_IMAGE_URL}" ]; then + echo "ERROR: Scenario requires a valid LATEST_RELEASE_IMAGE_URL, but got '${LATEST_RELEASE_IMAGE_URL}'" + record_junit "scenario_create_vms" "build_vm_image_not_found" "FAILED" + exit 1 + fi + prepare_kickstart host1 kickstart-bootc.ks.template "${LATEST_RELEASE_IMAGE_URL}" + launch_vm --boot_blueprint rhel96-bootc + + # Open the firewall ports. Other scenarios get this behavior by embedding + # settings in the blueprint, but we cannot open firewall ports in published + # images. We need to do this step before running the RF suite so that suite + # can assume it can reach all of the same ports as for any other test. + configure_vm_firewall host1 +} + +scenario_remove_vms() { + remove_vm host1 +} + +scenario_run_tests() { + run_tests host1 \ + --variable "EXPECTED_OS_VERSION:9.6" \ + --variable "IMAGE_SIGSTORE_ENABLED:True" \ + suites/standard1/ suites/selinux/validate-selinux-policy.robot +} diff --git a/test/scenarios-bootc/releases/el96-lrel@konflux-images-standard2.sh b/test/scenarios-bootc/releases/el96-lrel@konflux-images-standard2.sh new file mode 100644 index 0000000000..eeba2ad449 --- /dev/null +++ b/test/scenarios-bootc/releases/el96-lrel@konflux-images-standard2.sh @@ -0,0 +1,34 @@ +#!/bin/bash + +# Sourced from scenario.sh and uses functions defined there. + +# Enable container signature verification for published MicroShift images. +# These are ec / rc / z-stream, thus guaranteed to be signed. +# shellcheck disable=SC2034 # used elsewhere +IMAGE_SIGSTORE_ENABLED=true + +scenario_create_vms() { + if [ -z "${LATEST_RELEASE_IMAGE_URL}" ]; then + echo "ERROR: Scenario requires a valid LATEST_RELEASE_IMAGE_URL, but got '${LATEST_RELEASE_IMAGE_URL}'" + record_junit "scenario_create_vms" "build_vm_image_not_found" "FAILED" + exit 1 + fi + prepare_kickstart host1 kickstart-bootc.ks.template "${LATEST_RELEASE_IMAGE_URL}" + launch_vm --boot_blueprint rhel96-bootc + + # Open the firewall ports. Other scenarios get this behavior by embedding + # settings in the blueprint, but we cannot open firewall ports in published + # images. We need to do this step before running the RF suite so that suite + # can assume it can reach all of the same ports as for any other test. + configure_vm_firewall host1 +} + +scenario_remove_vms() { + remove_vm host1 +} + +scenario_run_tests() { + run_tests host1 \ + --variable "IMAGE_SIGSTORE_ENABLED:True" \ + suites/standard2/ +} diff --git a/test/scenarios/releases/el96@rpm-install-upgrade.sh b/test/scenarios/releases/el96@rpm-install-upgrade.sh index d9b8506c86..2e0cc928fb 100644 --- a/test/scenarios/releases/el96@rpm-install-upgrade.sh +++ b/test/scenarios/releases/el96@rpm-install-upgrade.sh @@ -109,7 +109,7 @@ scenario_run_tests() { run_tests host1 \ --exitonfailure \ --variable "SOURCE_REPO_URL:${repo_url}" \ - --variable "TARGET_VERSION:${BREW_LREL_RELEASE_VERSION}" \ + --variable "TARGET_VERSION:${BREW_LATEST_RELEASE_VERSION}" \ --variable "PREVIOUS_MINOR_VERSION:${PREVIOUS_MINOR_VERSION}" \ suites/rpm/install.robot \ suites/rpm/remove.robot \ diff --git a/test/scenarios/releases/el96@rpm-standard1.sh b/test/scenarios/releases/el96@rpm-standard1.sh index eb7e86fdee..d82d25efc9 100644 --- a/test/scenarios/releases/el96@rpm-standard1.sh +++ b/test/scenarios/releases/el96@rpm-standard1.sh @@ -77,7 +77,7 @@ scenario_run_tests() { run_tests host1 \ --exitonfailure \ --variable "SOURCE_REPO_URL:${repo_url}" \ - --variable "TARGET_VERSION:${BREW_LREL_RELEASE_VERSION}" \ + --variable "TARGET_VERSION:${BREW_LATEST_RELEASE_VERSION}" \ --variable "EXPECTED_OS_VERSION:9.6" \ suites/rpm/install.robot \ suites/standard1/ suites/selinux/validate-selinux-policy.robot diff --git a/test/scenarios/releases/el96@rpm-standard2.sh b/test/scenarios/releases/el96@rpm-standard2.sh index 7f4a3af16b..0aeaac0ad8 100644 --- a/test/scenarios/releases/el96@rpm-standard2.sh +++ b/test/scenarios/releases/el96@rpm-standard2.sh @@ -78,7 +78,7 @@ scenario_run_tests() { run_tests host1 \ --exitonfailure \ --variable "SOURCE_REPO_URL:${repo_url}" \ - --variable "TARGET_VERSION:${BREW_LREL_RELEASE_VERSION}" \ + --variable "TARGET_VERSION:${BREW_LATEST_RELEASE_VERSION}" \ --variable "EXPECTED_OS_VERSION:9.6" \ suites/rpm/install.robot \ suites/standard2/ From ce35c6bc9addce58b160ba703f938aa4cdf2b94f Mon Sep 17 00:00:00 2001 From: Alejandro Gullon Date: Fri, 19 Dec 2025 15:01:17 +0100 Subject: [PATCH 2/9] fix template --- test/assets/common_versions.sh.template | 9 ++++----- test/bin/common_versions.sh | 4 ++-- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/test/assets/common_versions.sh.template b/test/assets/common_versions.sh.template index 5daa9b3087..64c377a242 100644 --- a/test/assets/common_versions.sh.template +++ b/test/assets/common_versions.sh.template @@ -72,12 +72,11 @@ get_redhat_bootc_image_url() {{ local -r registry="$1" local -r release_version="$2" local image_url="" - # get arch local arch="" - if [ "${{UNAME_M}}" = "x86_64" ]; then + if [[ "{ARCH}" =~ x86 ]]; then arch="amd64" - elif [ "${{UNAME_M}}" = "aarch64" ]; then + elif [[ "{ARCH}" =~ aarch ]]; then arch="arm64" fi @@ -95,9 +94,9 @@ get_lrel_release_image_url() {{ local image_url="" if [[ "${{release_type}}" == "ec" ]]; then - image_url="$(curl -s "https://mirror.openshift.com/pub/openshift-v4/${{UNAME_M}}/microshift/ocp-dev-preview/${{release_version}}/el9/bootc-pullspec.txt")" + image_url="$(curl -s "https://mirror.openshift.com/pub/openshift-v4/{ARCH}/microshift/ocp-dev-preview/${{release_version}}/el9/bootc-pullspec.txt")" elif [[ "${{release_type}}" == "rc" ]]; then - image_url="$(curl -s "https://mirror.openshift.com/pub/openshift-v4/${{UNAME_M}}/microshift/ocp/${{release_version}}/el9/bootc-pullspec.txt")" + image_url="$(curl -s "https://mirror.openshift.com/pub/openshift-v4/{ARCH}/microshift/ocp/${{release_version}}/el9/bootc-pullspec.txt")" elif [[ "${{release_type}}" == "zstream" ]]; then for registry in "registry.redhat.io" "registry.stage.redhat.io"; do image_url="$(get_redhat_bootc_image_url "${{registry}}" "${{release_version}}")" diff --git a/test/bin/common_versions.sh b/test/bin/common_versions.sh index ba567953be..910074b84b 100644 --- a/test/bin/common_versions.sh +++ b/test/bin/common_versions.sh @@ -75,9 +75,9 @@ get_redhat_bootc_image_url() { # get arch local arch="" - if [ "${UNAME_M}" = "x86_64" ]; then + if [[ "${UNAME_M}" =~ x86 ]]; then arch="amd64" - elif [ "${UNAME_M}" = "aarch64" ]; then + elif [[ "${UNAME_M}" =~ aarch ]]; then arch="arm64" fi From 4396fc7998b1f695149a81e2fc0a5de73bf1f5bb Mon Sep 17 00:00:00 2001 From: Alejandro Gullon Date: Fri, 19 Dec 2025 15:45:48 +0100 Subject: [PATCH 3/9] fix missing blank line --- test/assets/common_versions.sh.template | 1 + 1 file changed, 1 insertion(+) diff --git a/test/assets/common_versions.sh.template b/test/assets/common_versions.sh.template index 64c377a242..87a4e492e6 100644 --- a/test/assets/common_versions.sh.template +++ b/test/assets/common_versions.sh.template @@ -72,6 +72,7 @@ get_redhat_bootc_image_url() {{ local -r registry="$1" local -r release_version="$2" local image_url="" + # get arch local arch="" if [[ "{ARCH}" =~ x86 ]]; then From 2350902ae84a072f4f767025b4961561851afe0a Mon Sep 17 00:00:00 2001 From: Alejandro Gullon Date: Fri, 19 Dec 2025 17:29:17 +0100 Subject: [PATCH 4/9] fix template --- test/bin/common_versions.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/bin/common_versions.sh b/test/bin/common_versions.sh index 910074b84b..202637d0a9 100644 --- a/test/bin/common_versions.sh +++ b/test/bin/common_versions.sh @@ -122,7 +122,7 @@ export FAKE_NEXT_MINOR_VERSION=$(( "${MINOR_VERSION}" + 1 )) # # For a release branch, the current release repository should come from the # official 'rhocp' stream. -CURRENT_RELEASE_REPO="https://mirror.openshift.com/pub/openshift-v4/${UNAME_M}/microshift/ocp-dev-preview/latest-4.21/el9/os" +CURRENT_RELEASE_REPO="https://mirror.openshift.com/pub/openshift-v4/${UNAME_M}/microshift/ocp/latest-4.21/el9/os" CURRENT_RELEASE_VERSION="$(get_vrel_from_beta "${CURRENT_RELEASE_REPO}")" export CURRENT_RELEASE_REPO export CURRENT_RELEASE_VERSION From f63aedb6e643f94d5e626560dcd269fb2e62df03 Mon Sep 17 00:00:00 2001 From: Alejandro Gullon Date: Sat, 20 Dec 2025 10:18:14 +0100 Subject: [PATCH 5/9] update release type --- test/bin/common_versions.sh | 2 +- test/bin/pyutils/generate_common_versions.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test/bin/common_versions.sh b/test/bin/common_versions.sh index 202637d0a9..e11dd42241 100644 --- a/test/bin/common_versions.sh +++ b/test/bin/common_versions.sh @@ -197,7 +197,7 @@ export BREW_EC_RELEASE_VERSION export BREW_NIGHTLY_RELEASE_VERSION # Latest Release info -LATEST_RELEASE_TYPE="ec" # ec, rc or zstream +LATEST_RELEASE_TYPE="rc" # ec, rc or zstream BREW_LATEST_RELEASE_VERSION="${BREW_EC_RELEASE_VERSION}" # BREW_EC_RELEASE_VERSION, BREW_RC_RELEASE_VERSION or BREW_Y0_RELEASE_VERSION LATEST_RELEASE_VERSION="$(echo "${BREW_LATEST_RELEASE_VERSION}" | sed -E 's/(.*)-.*/\1/' | sed -E 's/(.*)~(.*)/\1-\2/')" # example: 4.19.7 or 4.20.0-rc.3 LATEST_RELEASE_IMAGE_URL="$(get_lrel_release_image_url "${LATEST_RELEASE_TYPE}" "${LATEST_RELEASE_VERSION}")" diff --git a/test/bin/pyutils/generate_common_versions.py b/test/bin/pyutils/generate_common_versions.py index a0accc1cea..ae4d59bea6 100755 --- a/test/bin/pyutils/generate_common_versions.py +++ b/test/bin/pyutils/generate_common_versions.py @@ -28,7 +28,7 @@ GITOPS_VERSION = "1.16" # Set the release type to ec, rc or zstream -LATEST_RELEASE_TYPE = "ec" +LATEST_RELEASE_TYPE = "rc" logging.basicConfig( level=logging.INFO, From c436bd94a96b0942dd26eaba77fa0dd3a46e26c7 Mon Sep 17 00:00:00 2001 From: Alejandro Gullon Date: Sat, 20 Dec 2025 14:23:48 +0100 Subject: [PATCH 6/9] fix template --- test/assets/common_versions.sh.template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/assets/common_versions.sh.template b/test/assets/common_versions.sh.template index 87a4e492e6..ff8b022e72 100644 --- a/test/assets/common_versions.sh.template +++ b/test/assets/common_versions.sh.template @@ -197,7 +197,7 @@ export BREW_EC_RELEASE_VERSION export BREW_NIGHTLY_RELEASE_VERSION # Latest Release info -LATEST_RELEASE_TYPE="ec" # ec, rc or zstream +LATEST_RELEASE_TYPE="rc" # ec, rc or zstream BREW_LATEST_RELEASE_VERSION="${{BREW_EC_RELEASE_VERSION}}" # BREW_EC_RELEASE_VERSION, BREW_RC_RELEASE_VERSION or BREW_Y0_RELEASE_VERSION LATEST_RELEASE_VERSION="$(echo "${{BREW_LATEST_RELEASE_VERSION}}" | sed -E 's/(.*)-.*/\1/' | sed -E 's/(.*)~(.*)/\1-\2/')" # example: 4.19.7 or 4.20.0-rc.3 LATEST_RELEASE_IMAGE_URL="$(get_lrel_release_image_url "${{LATEST_RELEASE_TYPE}}" "${{LATEST_RELEASE_VERSION}}")" From 7be80a39599d073a274249da0888114297e9b6ed Mon Sep 17 00:00:00 2001 From: Alejandro Gullon Date: Mon, 22 Dec 2025 12:47:01 +0100 Subject: [PATCH 7/9] rename scenarios --- ...@konflux-images-standard1.sh => el96-lrel@images-standard1.sh} | 0 ...@konflux-images-standard2.sh => el96-lrel@images-standard2.sh} | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename test/scenarios-bootc/releases/{el96-lrel@konflux-images-standard1.sh => el96-lrel@images-standard1.sh} (100%) rename test/scenarios-bootc/releases/{el96-lrel@konflux-images-standard2.sh => el96-lrel@images-standard2.sh} (100%) diff --git a/test/scenarios-bootc/releases/el96-lrel@konflux-images-standard1.sh b/test/scenarios-bootc/releases/el96-lrel@images-standard1.sh similarity index 100% rename from test/scenarios-bootc/releases/el96-lrel@konflux-images-standard1.sh rename to test/scenarios-bootc/releases/el96-lrel@images-standard1.sh diff --git a/test/scenarios-bootc/releases/el96-lrel@konflux-images-standard2.sh b/test/scenarios-bootc/releases/el96-lrel@images-standard2.sh similarity index 100% rename from test/scenarios-bootc/releases/el96-lrel@konflux-images-standard2.sh rename to test/scenarios-bootc/releases/el96-lrel@images-standard2.sh From 1641c9bd40935d2fb40539388b459322b9e504b1 Mon Sep 17 00:00:00 2001 From: Alejandro Gullon Date: Mon, 22 Dec 2025 13:02:12 +0100 Subject: [PATCH 8/9] set RC --- test/assets/common_versions.sh.template | 2 +- test/bin/common_versions.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test/assets/common_versions.sh.template b/test/assets/common_versions.sh.template index ff8b022e72..43007fab5e 100644 --- a/test/assets/common_versions.sh.template +++ b/test/assets/common_versions.sh.template @@ -198,7 +198,7 @@ export BREW_NIGHTLY_RELEASE_VERSION # Latest Release info LATEST_RELEASE_TYPE="rc" # ec, rc or zstream -BREW_LATEST_RELEASE_VERSION="${{BREW_EC_RELEASE_VERSION}}" # BREW_EC_RELEASE_VERSION, BREW_RC_RELEASE_VERSION or BREW_Y0_RELEASE_VERSION +BREW_LATEST_RELEASE_VERSION="${{BREW_RC_RELEASE_VERSION}}" # BREW_EC_RELEASE_VERSION, BREW_RC_RELEASE_VERSION or BREW_Y0_RELEASE_VERSION LATEST_RELEASE_VERSION="$(echo "${{BREW_LATEST_RELEASE_VERSION}}" | sed -E 's/(.*)-.*/\1/' | sed -E 's/(.*)~(.*)/\1-\2/')" # example: 4.19.7 or 4.20.0-rc.3 LATEST_RELEASE_IMAGE_URL="$(get_lrel_release_image_url "${{LATEST_RELEASE_TYPE}}" "${{LATEST_RELEASE_VERSION}}")" diff --git a/test/bin/common_versions.sh b/test/bin/common_versions.sh index e11dd42241..90aa141b35 100644 --- a/test/bin/common_versions.sh +++ b/test/bin/common_versions.sh @@ -198,7 +198,7 @@ export BREW_NIGHTLY_RELEASE_VERSION # Latest Release info LATEST_RELEASE_TYPE="rc" # ec, rc or zstream -BREW_LATEST_RELEASE_VERSION="${BREW_EC_RELEASE_VERSION}" # BREW_EC_RELEASE_VERSION, BREW_RC_RELEASE_VERSION or BREW_Y0_RELEASE_VERSION +BREW_LATEST_RELEASE_VERSION="${BREW_RC_RELEASE_VERSION}" # BREW_EC_RELEASE_VERSION, BREW_RC_RELEASE_VERSION or BREW_Y0_RELEASE_VERSION LATEST_RELEASE_VERSION="$(echo "${BREW_LATEST_RELEASE_VERSION}" | sed -E 's/(.*)-.*/\1/' | sed -E 's/(.*)~(.*)/\1-\2/')" # example: 4.19.7 or 4.20.0-rc.3 LATEST_RELEASE_IMAGE_URL="$(get_lrel_release_image_url "${LATEST_RELEASE_TYPE}" "${LATEST_RELEASE_VERSION}")" From 47e84a0b8b1e64a3d9fb0ea714183d6133b99c28 Mon Sep 17 00:00:00 2001 From: Alejandro Gullon Date: Tue, 23 Dec 2025 09:53:05 +0100 Subject: [PATCH 9/9] rename scenarios --- ...mages-standard1.sh => el96-lrel@published-images-standard1.sh} | 0 ...mages-standard2.sh => el96-lrel@published-images-standard2.sh} | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename test/scenarios-bootc/releases/{el96-lrel@images-standard1.sh => el96-lrel@published-images-standard1.sh} (100%) rename test/scenarios-bootc/releases/{el96-lrel@images-standard2.sh => el96-lrel@published-images-standard2.sh} (100%) diff --git a/test/scenarios-bootc/releases/el96-lrel@images-standard1.sh b/test/scenarios-bootc/releases/el96-lrel@published-images-standard1.sh similarity index 100% rename from test/scenarios-bootc/releases/el96-lrel@images-standard1.sh rename to test/scenarios-bootc/releases/el96-lrel@published-images-standard1.sh diff --git a/test/scenarios-bootc/releases/el96-lrel@images-standard2.sh b/test/scenarios-bootc/releases/el96-lrel@published-images-standard2.sh similarity index 100% rename from test/scenarios-bootc/releases/el96-lrel@images-standard2.sh rename to test/scenarios-bootc/releases/el96-lrel@published-images-standard2.sh