From eb2f7d76c53d2c1c901cf2c7874bc9090ea9838b Mon Sep 17 00:00:00 2001 From: Sergio Regidor Date: Tue, 21 Jul 2026 12:28:39 +0000 Subject: [PATCH 1/3] NO-ISSUE: move 5.0 pin images upgrade to MCO --- ...nfig-operator-release-4.23__periodics.yaml | 16 ++ ...onfig-operator-release-5.0__periodics.yaml | 15 ++ ...-nightly-5.0-upgrade-from-stable-4.22.yaml | 12 -- ...e-nightly-5.0-upgrade-from-stable-5.0.yaml | 13 -- ...onfig-operator-release-4.23-periodics.yaml | 88 +++++++++ ...config-operator-release-5.0-periodics.yaml | 88 +++++++++ ...t-tests-private-release-5.0-periodics.yaml | 178 ------------------ ...-qe-catalogsource-disconnected-commands.sh | 5 + ...ble-qe-catalogsource-disconnected-ref.yaml | 4 + ...t-sample-operator-disconnected-commands.sh | 99 ++++++++++ 10 files changed, 315 insertions(+), 203 deletions(-) diff --git a/ci-operator/config/openshift/machine-config-operator/openshift-machine-config-operator-release-4.23__periodics.yaml b/ci-operator/config/openshift/machine-config-operator/openshift-machine-config-operator-release-4.23__periodics.yaml index 01d00d3d578d4..9d0188e2ac77a 100644 --- a/ci-operator/config/openshift/machine-config-operator/openshift-machine-config-operator-release-4.23__periodics.yaml +++ b/ci-operator/config/openshift/machine-config-operator/openshift-machine-config-operator-release-4.23__periodics.yaml @@ -427,6 +427,22 @@ tests: - ref: mco-check-day1-enable-ocl - ref: openshift-e2e-test workflow: openshift-e2e-aws +- as: e2e-aws-ipi-disc-priv-tp-pin-mco + interval: 168h + steps: + cluster_profile: openshift-org-aws + dependencies: + OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE: release:initial + env: + CUSTOM_OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE: registry.build10.ci.openshift.org/ci-ln-xitccvk/release:latest + EXTRACT_MANIFEST_INCLUDED: "true" + FEATURE_SET: TechPreviewNoUpgrade + MCO_CONF_DAY2_PINTARGETRELEASE: "true" + MCO_CONF_DAY2_PINTARGETRELEASE_REMOVE_PULLSECRET: "true" + SKIP_QE_APP_REGISTRY: "true" + test: + - chain: openshift-upgrade-qe-sanity-disconnected + workflow: cucushift-installer-rehearse-aws-ipi-disconnected-private zz_generated_metadata: branch: release-4.23 org: openshift diff --git a/ci-operator/config/openshift/machine-config-operator/openshift-machine-config-operator-release-5.0__periodics.yaml b/ci-operator/config/openshift/machine-config-operator/openshift-machine-config-operator-release-5.0__periodics.yaml index e7fba61f23a47..3bb85b71e8653 100644 --- a/ci-operator/config/openshift/machine-config-operator/openshift-machine-config-operator-release-5.0__periodics.yaml +++ b/ci-operator/config/openshift/machine-config-operator/openshift-machine-config-operator-release-5.0__periodics.yaml @@ -462,6 +462,21 @@ tests: EXPECTED_RELEASE_VERSION: "5.0" test: - ref: mco-automation-update-amis +- as: e2e-aws-ipi-disc-priv-tp-pin-mco + interval: 168h + steps: + cluster_profile: openshift-org-aws + dependencies: + OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE: release:initial + env: + EXTRACT_MANIFEST_INCLUDED: "true" + FEATURE_SET: TechPreviewNoUpgrade + MCO_CONF_DAY2_PINTARGETRELEASE: "true" + MCO_CONF_DAY2_PINTARGETRELEASE_REMOVE_PULLSECRET: "true" + SKIP_QE_APP_REGISTRY: "true" + test: + - chain: openshift-upgrade-qe-sanity-disconnected + workflow: cucushift-installer-rehearse-aws-ipi-disconnected-private zz_generated_metadata: branch: release-5.0 org: openshift diff --git a/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-5.0__automated-release-nightly-5.0-upgrade-from-stable-4.22.yaml b/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-5.0__automated-release-nightly-5.0-upgrade-from-stable-4.22.yaml index 27f684bcc33cb..12ae0bbdfe9f1 100644 --- a/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-5.0__automated-release-nightly-5.0-upgrade-from-stable-4.22.yaml +++ b/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-5.0__automated-release-nightly-5.0-upgrade-from-stable-4.22.yaml @@ -99,18 +99,6 @@ tests: test: - chain: openshift-upgrade-qe-sanity workflow: cucushift-installer-rehearse-gcp-ipi -- as: aws-ipi-disconnected-pin-mco-f14 - cron: 26 1 3,17 * * - steps: - cluster_profile: aws-qe - env: - BASE_DOMAIN: qe.devcluster.openshift.com - EXTRACT_MANIFEST_INCLUDED: "true" - MCO_CONF_DAY2_PINTARGETRELEASE: "true" - MCO_CONF_DAY2_PINTARGETRELEASE_REMOVE_PULLSECRET: "true" - test: - - chain: openshift-upgrade-qe-sanity-disconnected - workflow: cucushift-installer-rehearse-aws-ipi-disconnected-private zz_generated_metadata: branch: release-5.0 org: openshift diff --git a/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-5.0__automated-release-nightly-5.0-upgrade-from-stable-5.0.yaml b/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-5.0__automated-release-nightly-5.0-upgrade-from-stable-5.0.yaml index 9a110ab6cfa99..851a843895ac9 100644 --- a/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-5.0__automated-release-nightly-5.0-upgrade-from-stable-5.0.yaml +++ b/ci-operator/config/openshift/openshift-tests-private/openshift-openshift-tests-private-release-5.0__automated-release-nightly-5.0-upgrade-from-stable-5.0.yaml @@ -102,19 +102,6 @@ tests: test: - chain: openshift-upgrade-qe-sanity workflow: cucushift-installer-rehearse-gcp-ipi -- as: aws-ipi-disc-priv-tp-pin-mco-f14 - cron: 56 13 14,30 * * - steps: - cluster_profile: aws-qe - env: - BASE_DOMAIN: qe.devcluster.openshift.com - EXTRACT_MANIFEST_INCLUDED: "true" - FEATURE_SET: TechPreviewNoUpgrade - MCO_CONF_DAY2_PINTARGETRELEASE: "true" - MCO_CONF_DAY2_PINTARGETRELEASE_REMOVE_PULLSECRET: "true" - test: - - chain: openshift-upgrade-qe-sanity-disconnected - workflow: cucushift-installer-rehearse-aws-ipi-disconnected-private zz_generated_metadata: branch: release-5.0 org: openshift diff --git a/ci-operator/jobs/openshift/machine-config-operator/openshift-machine-config-operator-release-4.23-periodics.yaml b/ci-operator/jobs/openshift/machine-config-operator/openshift-machine-config-operator-release-4.23-periodics.yaml index faa7053bea0c2..a55e2cdeb5b70 100644 --- a/ci-operator/jobs/openshift/machine-config-operator/openshift-machine-config-operator-release-4.23-periodics.yaml +++ b/ci-operator/jobs/openshift/machine-config-operator/openshift-machine-config-operator-release-4.23-periodics.yaml @@ -484,6 +484,94 @@ periodics: - name: result-aggregator secret: secretName: result-aggregator +- agent: kubernetes + cluster: build09 + decorate: true + decoration_config: + sparse_checkout_files: + - .ci-operator.yaml + - Dockerfile.rhel7 + extra_refs: + - base_ref: release-4.23 + org: openshift + repo: machine-config-operator + sparse_checkout_files: + - .ci-operator.yaml + - Dockerfile.rhel7 + interval: 168h + labels: + ci-operator.openshift.io/cloud: aws + ci-operator.openshift.io/cloud-cluster-profile: openshift-org-aws + ci-operator.openshift.io/variant: periodics + ci.openshift.io/generator: prowgen + job-release: "4.23" + pj-rehearse.openshift.io/can-be-rehearsed: "true" + name: periodic-ci-openshift-machine-config-operator-release-4.23-periodics-e2e-aws-ipi-disc-priv-tp-pin-mco + spec: + containers: + - args: + - --gcs-upload-secret=/secrets/gcs/service-account.json + - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson + - --lease-server-credentials-file=/etc/boskos/credentials + - --report-credentials-file=/etc/report/credentials + - --secret-dir=/secrets/ci-pull-credentials + - --target=e2e-aws-ipi-disc-priv-tp-pin-mco + - --variant=periodics + command: + - ci-operator + env: + - name: HTTP_SERVER_IP + valueFrom: + fieldRef: + fieldPath: status.podIP + image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest + imagePullPolicy: Always + name: "" + ports: + - containerPort: 8080 + name: http + resources: + requests: + cpu: 10m + volumeMounts: + - mountPath: /etc/boskos + name: boskos + readOnly: true + - mountPath: /secrets/ci-pull-credentials + name: ci-pull-credentials + readOnly: true + - mountPath: /secrets/gcs + name: gcs-credentials + readOnly: true + - mountPath: /secrets/manifest-tool + name: manifest-tool-local-pusher + readOnly: true + - mountPath: /etc/pull-secret + name: pull-secret + readOnly: true + - mountPath: /etc/report + name: result-aggregator + readOnly: true + serviceAccountName: ci-operator + volumes: + - name: boskos + secret: + items: + - key: credentials + path: credentials + secretName: boskos-credentials + - name: ci-pull-credentials + secret: + secretName: ci-pull-credentials + - name: manifest-tool-local-pusher + secret: + secretName: manifest-tool-local-pusher + - name: pull-secret + secret: + secretName: registry-pull-credentials + - name: result-aggregator + secret: + secretName: result-aggregator - agent: kubernetes cluster: build09 decorate: true diff --git a/ci-operator/jobs/openshift/machine-config-operator/openshift-machine-config-operator-release-5.0-periodics.yaml b/ci-operator/jobs/openshift/machine-config-operator/openshift-machine-config-operator-release-5.0-periodics.yaml index aca32d82bb9a0..2ec58f4df12a8 100644 --- a/ci-operator/jobs/openshift/machine-config-operator/openshift-machine-config-operator-release-5.0-periodics.yaml +++ b/ci-operator/jobs/openshift/machine-config-operator/openshift-machine-config-operator-release-5.0-periodics.yaml @@ -484,6 +484,94 @@ periodics: - name: result-aggregator secret: secretName: result-aggregator +- agent: kubernetes + cluster: build07 + decorate: true + decoration_config: + sparse_checkout_files: + - .ci-operator.yaml + - Dockerfile.rhel7 + extra_refs: + - base_ref: release-5.0 + org: openshift + repo: machine-config-operator + sparse_checkout_files: + - .ci-operator.yaml + - Dockerfile.rhel7 + interval: 168h + labels: + ci-operator.openshift.io/cloud: aws + ci-operator.openshift.io/cloud-cluster-profile: openshift-org-aws + ci-operator.openshift.io/variant: periodics + ci.openshift.io/generator: prowgen + job-release: "5.0" + pj-rehearse.openshift.io/can-be-rehearsed: "true" + name: periodic-ci-openshift-machine-config-operator-release-5.0-periodics-e2e-aws-ipi-disc-priv-tp-pin-mco + spec: + containers: + - args: + - --gcs-upload-secret=/secrets/gcs/service-account.json + - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson + - --lease-server-credentials-file=/etc/boskos/credentials + - --report-credentials-file=/etc/report/credentials + - --secret-dir=/secrets/ci-pull-credentials + - --target=e2e-aws-ipi-disc-priv-tp-pin-mco + - --variant=periodics + command: + - ci-operator + env: + - name: HTTP_SERVER_IP + valueFrom: + fieldRef: + fieldPath: status.podIP + image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest + imagePullPolicy: Always + name: "" + ports: + - containerPort: 8080 + name: http + resources: + requests: + cpu: 10m + volumeMounts: + - mountPath: /etc/boskos + name: boskos + readOnly: true + - mountPath: /secrets/ci-pull-credentials + name: ci-pull-credentials + readOnly: true + - mountPath: /secrets/gcs + name: gcs-credentials + readOnly: true + - mountPath: /secrets/manifest-tool + name: manifest-tool-local-pusher + readOnly: true + - mountPath: /etc/pull-secret + name: pull-secret + readOnly: true + - mountPath: /etc/report + name: result-aggregator + readOnly: true + serviceAccountName: ci-operator + volumes: + - name: boskos + secret: + items: + - key: credentials + path: credentials + secretName: boskos-credentials + - name: ci-pull-credentials + secret: + secretName: ci-pull-credentials + - name: manifest-tool-local-pusher + secret: + secretName: manifest-tool-local-pusher + - name: pull-secret + secret: + secretName: registry-pull-credentials + - name: result-aggregator + secret: + secretName: result-aggregator - agent: kubernetes cluster: build07 decorate: true diff --git a/ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-5.0-periodics.yaml b/ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-5.0-periodics.yaml index c9ff97fc6a3b0..87036ec2838d7 100644 --- a/ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-5.0-periodics.yaml +++ b/ci-operator/jobs/openshift/openshift-tests-private/openshift-openshift-tests-private-release-5.0-periodics.yaml @@ -35117,95 +35117,6 @@ periodics: - name: result-aggregator secret: secretName: result-aggregator -- agent: kubernetes - cluster: build07 - cron: 26 1 3,17 * * - decorate: true - decoration_config: - skip_cloning: true - extra_refs: - - base_ref: release-5.0 - org: openshift - repo: openshift-tests-private - labels: - ci-operator.openshift.io/cloud: aws - ci-operator.openshift.io/cloud-cluster-profile: aws-qe - ci-operator.openshift.io/variant: automated-release-nightly-5.0-upgrade-from-stable-4.22 - ci.openshift.io/generator: prowgen - pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-openshift-tests-private-release-5.0-automated-release-nightly-5.0-upgrade-from-stable-4.22-aws-ipi-disconnected-pin-mco-f14 - spec: - containers: - - args: - - --gcs-upload-secret=/secrets/gcs/service-account.json - - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - - --lease-server-credentials-file=/etc/boskos/credentials - - --oauth-token-path=/usr/local/github-credentials/oauth - - --report-credentials-file=/etc/report/credentials - - --secret-dir=/secrets/ci-pull-credentials - - --target=aws-ipi-disconnected-pin-mco-f14 - - --variant=automated-release-nightly-5.0-upgrade-from-stable-4.22 - command: - - ci-operator - env: - - name: HTTP_SERVER_IP - valueFrom: - fieldRef: - fieldPath: status.podIP - image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest - imagePullPolicy: Always - name: "" - ports: - - containerPort: 8080 - name: http - resources: - requests: - cpu: 10m - volumeMounts: - - mountPath: /etc/boskos - name: boskos - readOnly: true - - mountPath: /secrets/ci-pull-credentials - name: ci-pull-credentials - readOnly: true - - mountPath: /secrets/gcs - name: gcs-credentials - readOnly: true - - mountPath: /usr/local/github-credentials - name: github-credentials-openshift-ci-robot-private-git-cloner - readOnly: true - - mountPath: /secrets/manifest-tool - name: manifest-tool-local-pusher - readOnly: true - - mountPath: /etc/pull-secret - name: pull-secret - readOnly: true - - mountPath: /etc/report - name: result-aggregator - readOnly: true - serviceAccountName: ci-operator - volumes: - - name: boskos - secret: - items: - - key: credentials - path: credentials - secretName: boskos-credentials - - name: ci-pull-credentials - secret: - secretName: ci-pull-credentials - - name: github-credentials-openshift-ci-robot-private-git-cloner - secret: - secretName: github-credentials-openshift-ci-robot-private-git-cloner - - name: manifest-tool-local-pusher - secret: - secretName: manifest-tool-local-pusher - - name: pull-secret - secret: - secretName: registry-pull-credentials - - name: result-aggregator - secret: - secretName: result-aggregator - agent: kubernetes cluster: build07 cron: 8 8 29 2 * @@ -35562,95 +35473,6 @@ periodics: - name: result-aggregator secret: secretName: result-aggregator -- agent: kubernetes - cluster: build07 - cron: 56 13 14,30 * * - decorate: true - decoration_config: - skip_cloning: true - extra_refs: - - base_ref: release-5.0 - org: openshift - repo: openshift-tests-private - labels: - ci-operator.openshift.io/cloud: aws - ci-operator.openshift.io/cloud-cluster-profile: aws-qe - ci-operator.openshift.io/variant: automated-release-nightly-5.0-upgrade-from-stable-5.0 - ci.openshift.io/generator: prowgen - pj-rehearse.openshift.io/can-be-rehearsed: "true" - name: periodic-ci-openshift-openshift-tests-private-release-5.0-automated-release-nightly-5.0-upgrade-from-stable-5.0-aws-ipi-disc-priv-tp-pin-mco-f14 - spec: - containers: - - args: - - --gcs-upload-secret=/secrets/gcs/service-account.json - - --image-import-pull-secret=/etc/pull-secret/.dockerconfigjson - - --lease-server-credentials-file=/etc/boskos/credentials - - --oauth-token-path=/usr/local/github-credentials/oauth - - --report-credentials-file=/etc/report/credentials - - --secret-dir=/secrets/ci-pull-credentials - - --target=aws-ipi-disc-priv-tp-pin-mco-f14 - - --variant=automated-release-nightly-5.0-upgrade-from-stable-5.0 - command: - - ci-operator - env: - - name: HTTP_SERVER_IP - valueFrom: - fieldRef: - fieldPath: status.podIP - image: quay-proxy.ci.openshift.org/openshift/ci:ci_ci-operator_latest - imagePullPolicy: Always - name: "" - ports: - - containerPort: 8080 - name: http - resources: - requests: - cpu: 10m - volumeMounts: - - mountPath: /etc/boskos - name: boskos - readOnly: true - - mountPath: /secrets/ci-pull-credentials - name: ci-pull-credentials - readOnly: true - - mountPath: /secrets/gcs - name: gcs-credentials - readOnly: true - - mountPath: /usr/local/github-credentials - name: github-credentials-openshift-ci-robot-private-git-cloner - readOnly: true - - mountPath: /secrets/manifest-tool - name: manifest-tool-local-pusher - readOnly: true - - mountPath: /etc/pull-secret - name: pull-secret - readOnly: true - - mountPath: /etc/report - name: result-aggregator - readOnly: true - serviceAccountName: ci-operator - volumes: - - name: boskos - secret: - items: - - key: credentials - path: credentials - secretName: boskos-credentials - - name: ci-pull-credentials - secret: - secretName: ci-pull-credentials - - name: github-credentials-openshift-ci-robot-private-git-cloner - secret: - secretName: github-credentials-openshift-ci-robot-private-git-cloner - - name: manifest-tool-local-pusher - secret: - secretName: manifest-tool-local-pusher - - name: pull-secret - secret: - secretName: registry-pull-credentials - - name: result-aggregator - secret: - secretName: result-aggregator - agent: kubernetes cluster: build07 cron: 8 8 29 2 * diff --git a/ci-operator/step-registry/enable-qe-catalogsource/disconnected/enable-qe-catalogsource-disconnected-commands.sh b/ci-operator/step-registry/enable-qe-catalogsource/disconnected/enable-qe-catalogsource-disconnected-commands.sh index 55d6e4e9320b5..c5405451899c9 100644 --- a/ci-operator/step-registry/enable-qe-catalogsource/disconnected/enable-qe-catalogsource-disconnected-commands.sh +++ b/ci-operator/step-registry/enable-qe-catalogsource/disconnected/enable-qe-catalogsource-disconnected-commands.sh @@ -7,6 +7,11 @@ # The script exit 0 if fail to create catalogsource. this allows the other test can be executed continuously set -u +if [[ "${SKIP_QE_APP_REGISTRY:-false}" == "true" ]]; then + echo "====> SKIP_QE_APP_REGISTRY=true, skipping deploy qe catalogsource" + exit 0 +fi + # Version comparison functions using sort -V function version_gt() { # Returns 0 (true) if $1 > $2 diff --git a/ci-operator/step-registry/enable-qe-catalogsource/disconnected/enable-qe-catalogsource-disconnected-ref.yaml b/ci-operator/step-registry/enable-qe-catalogsource/disconnected/enable-qe-catalogsource-disconnected-ref.yaml index e29888925ec04..822220c2a8c1e 100644 --- a/ci-operator/step-registry/enable-qe-catalogsource/disconnected/enable-qe-catalogsource-disconnected-ref.yaml +++ b/ci-operator/step-registry/enable-qe-catalogsource/disconnected/enable-qe-catalogsource-disconnected-ref.yaml @@ -27,6 +27,10 @@ ref: - name: SELF_MANAGED_ADDITIONAL_CA default: "" documentation: Use the CA of regsitry server cert from cluster profile, set to `true` to enable + - name: SKIP_QE_APP_REGISTRY + default: "false" + documentation: |- + Set to true to skip QE catalogsource installation credentials: - namespace: test-credentials name: openshift-custom-mirror-registry diff --git a/ci-operator/step-registry/set-sample-operator/disconnected/set-sample-operator-disconnected-commands.sh b/ci-operator/step-registry/set-sample-operator/disconnected/set-sample-operator-disconnected-commands.sh index 0350ddf134f2d..2a9601f276635 100644 --- a/ci-operator/step-registry/set-sample-operator/disconnected/set-sample-operator-disconnected-commands.sh +++ b/ci-operator/step-registry/set-sample-operator/disconnected/set-sample-operator-disconnected-commands.sh @@ -84,6 +84,104 @@ function check_mirror_registry () { fi } +# The ICSP/IDMS for registry.redhat.io and quay.io/openshifttest is normally +# created by enable-qe-catalogsource-disconnected. However, that step may be +# skipped (SKIP_QE_APP_REGISTRY) or fail due to missing QE index images. +# This function ensures the ICSP/IDMS exists so the sample operator can pull +# images from the proxy mirror registry in disconnected environments. +function ensure_icsp_exists () { + MIRROR_PROXY_REGISTRY_QUAY=$(echo "${MIRROR_PROXY_REGISTRY}" | sed 's/5000/6001/g') + + if oc get ImageContentSourcePolicy image-policy-aosqe &>/dev/null || \ + oc get ImageDigestMirrorSet image-policy-aosqe &>/dev/null; then + echo "ICSP/IDMS already exists, skip creating." + return 0 + fi + + echo "ICSP/IDMS not found, creating..." + kube_minor=$(oc version -o json | grep -o '"minor": *"[^"]*"' | tail -1 | grep -o '[0-9]*') + icsp_num=$(oc get ImageContentSourcePolicy -o name 2>/dev/null | wc -l) + + if [[ $icsp_num -gt 0 || $kube_minor -lt 26 ]]; then + cat < Date: Wed, 29 Jul 2026 12:41:56 +0000 Subject: [PATCH 2/3] only use 4.23 --- ...nfig-operator-release-4.23__periodics.yaml | 11 ++- ...t-sample-operator-disconnected-commands.sh | 99 ------------------- 2 files changed, 9 insertions(+), 101 deletions(-) diff --git a/ci-operator/config/openshift/machine-config-operator/openshift-machine-config-operator-release-4.23__periodics.yaml b/ci-operator/config/openshift/machine-config-operator/openshift-machine-config-operator-release-4.23__periodics.yaml index 9d0188e2ac77a..4f7181e801db2 100644 --- a/ci-operator/config/openshift/machine-config-operator/openshift-machine-config-operator-release-4.23__periodics.yaml +++ b/ci-operator/config/openshift/machine-config-operator/openshift-machine-config-operator-release-4.23__periodics.yaml @@ -434,13 +434,20 @@ tests: dependencies: OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE: release:initial env: - CUSTOM_OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE: registry.build10.ci.openshift.org/ci-ln-xitccvk/release:latest + CUSTOM_OPENSHIFT_INSTALL_RELEASE_IMAGE_OVERRIDE: registry.build10.ci.openshift.org/ci-ln-39q90fb/release:latest EXTRACT_MANIFEST_INCLUDED: "true" FEATURE_SET: TechPreviewNoUpgrade MCO_CONF_DAY2_PINTARGETRELEASE: "true" MCO_CONF_DAY2_PINTARGETRELEASE_REMOVE_PULLSECRET: "true" - SKIP_QE_APP_REGISTRY: "true" test: + - as: set-upgrade-target + cli: latest + commands: echo "registry.build10.ci.openshift.org/ci-ln-b1s088b/release:latest" + > "${SHARED_DIR}/upgrade-edge" + from: cli + resources: + requests: + cpu: 100m - chain: openshift-upgrade-qe-sanity-disconnected workflow: cucushift-installer-rehearse-aws-ipi-disconnected-private zz_generated_metadata: diff --git a/ci-operator/step-registry/set-sample-operator/disconnected/set-sample-operator-disconnected-commands.sh b/ci-operator/step-registry/set-sample-operator/disconnected/set-sample-operator-disconnected-commands.sh index 2a9601f276635..0350ddf134f2d 100644 --- a/ci-operator/step-registry/set-sample-operator/disconnected/set-sample-operator-disconnected-commands.sh +++ b/ci-operator/step-registry/set-sample-operator/disconnected/set-sample-operator-disconnected-commands.sh @@ -84,104 +84,6 @@ function check_mirror_registry () { fi } -# The ICSP/IDMS for registry.redhat.io and quay.io/openshifttest is normally -# created by enable-qe-catalogsource-disconnected. However, that step may be -# skipped (SKIP_QE_APP_REGISTRY) or fail due to missing QE index images. -# This function ensures the ICSP/IDMS exists so the sample operator can pull -# images from the proxy mirror registry in disconnected environments. -function ensure_icsp_exists () { - MIRROR_PROXY_REGISTRY_QUAY=$(echo "${MIRROR_PROXY_REGISTRY}" | sed 's/5000/6001/g') - - if oc get ImageContentSourcePolicy image-policy-aosqe &>/dev/null || \ - oc get ImageDigestMirrorSet image-policy-aosqe &>/dev/null; then - echo "ICSP/IDMS already exists, skip creating." - return 0 - fi - - echo "ICSP/IDMS not found, creating..." - kube_minor=$(oc version -o json | grep -o '"minor": *"[^"]*"' | tail -1 | grep -o '[0-9]*') - icsp_num=$(oc get ImageContentSourcePolicy -o name 2>/dev/null | wc -l) - - if [[ $icsp_num -gt 0 || $kube_minor -lt 26 ]]; then - cat < Date: Thu, 30 Jul 2026 10:19:53 +0000 Subject: [PATCH 3/3] hack th epinnedimages step --- .../mco-conf-day2-pintargetrelease-commands.sh | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/ci-operator/step-registry/mco/conf/day2/pintargetrelease/mco-conf-day2-pintargetrelease-commands.sh b/ci-operator/step-registry/mco/conf/day2/pintargetrelease/mco-conf-day2-pintargetrelease-commands.sh index 998f6cfefefa6..39d2cd4a1c570 100644 --- a/ci-operator/step-registry/mco/conf/day2/pintargetrelease/mco-conf-day2-pintargetrelease-commands.sh +++ b/ci-operator/step-registry/mco/conf/day2/pintargetrelease/mco-conf-day2-pintargetrelease-commands.sh @@ -21,14 +21,22 @@ fi # If it's serial upgrades then override-upgrade file will store the release and overrides OPENSHIFT_UPGRADE_RELEASE_IMAGE_OVERRIDE # upgrade-edge file expects a comma separated releases list like target_release1,target_release2,... -# If those file exists we fail the execution since serial upgrades are not supported in this step +# If those file exists with multiple releases we fail the execution since serial upgrades are not supported in this step if [[ -f "${SHARED_DIR}/upgrade-edge" ]]; then - echo "ERROR: Serial upgrades are not supported!!" - exit 255 + edge_count=$(tr ',' '\n' < "${SHARED_DIR}/upgrade-edge" | grep -c .) + if (( edge_count > 1 )); then + echo "ERROR: Serial upgrades are not supported!!" + exit 255 + fi + echo "Single upgrade target override found in upgrade-edge, continuing..." fi TARGET="${OPENSHIFT_UPGRADE_RELEASE_IMAGE_OVERRIDE}" +if [[ -f "${SHARED_DIR}/upgrade-edge" ]]; then + TARGET=$(head -n 1 "${SHARED_DIR}/upgrade-edge" | tr ',' '\n' | head -1) + echo "Overriding upgrade target from upgrade-edge: ${TARGET}" +fi DIGEST=$(oc adm release info "${TARGET}" -a "${CLUSTER_PROFILE_DIR}"/pull-secret -o json | jq -r .digest) REPO="${TARGET%:*}" REPO="${REPO%@sha256*}"