From 917e14bddbdfa30c9d2490962003e88c8ad081a3 Mon Sep 17 00:00:00 2001 From: Oleksandr Shmaraiev Date: Fri, 6 Nov 2026 23:53:59 +0200 Subject: [PATCH 1/2] ci: fix OLM health check for HyperShift hosted clusters on OCP 4.22 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit verifyOLMHealth waited for the catalog-operator and olm-operator deployments in openshift-operator-lifecycle-manager of the hosted cluster, but they do not exist there: OLM v1 changed the component layout on recent OCP releases, and the hosted cluster is created with --olm-catalog-placement management (catalog sources live in the management cluster). The check failed with NotFound on every run and aborted the job before Che deployment. Wait for the operator-lifecycle-manager ClusterOperator condition instead — the version-agnostic health signal that exists in hosted clusters on all supported releases. Co-Authored-By: Claude Code Signed-off-by: Oleksandr Shmaraiev --- .ci/oci-devworkspace-happy-path.sh | 35 +++++++++--------------------- 1 file changed, 10 insertions(+), 25 deletions(-) diff --git a/.ci/oci-devworkspace-happy-path.sh b/.ci/oci-devworkspace-happy-path.sh index edd486047..5fdc37109 100755 --- a/.ci/oci-devworkspace-happy-path.sh +++ b/.ci/oci-devworkspace-happy-path.sh @@ -73,32 +73,17 @@ deployDWO() { verifyOLMHealth() { echo "======== Verifying OLM Infrastructure ========" - # Check catalog-operator is available - echo "Checking catalog-operator..." - if ! kubectl wait --for=condition=available deployment/catalog-operator \ - -n openshift-operator-lifecycle-manager \ + # The catalog-operator/olm-operator deployments do not exist in a + # HyperShift hosted cluster on recent OCP releases: OLM v1 changed the + # component layout, and the hosted cluster is created with + # --olm-catalog-placement management (catalog sources live in the + # management cluster). The ClusterOperator resource is the + # version-agnostic health signal instead. + echo "Checking operator-lifecycle-manager ClusterOperator..." + if ! kubectl wait --for=condition=Available clusteroperator/operator-lifecycle-manager \ --timeout=120s 2>&1; then - echo "ERROR: catalog-operator is not ready" - kubectl get deployment/catalog-operator \ - -n openshift-operator-lifecycle-manager -o yaml || true - return 1 - fi - - # Check olm-operator is available - echo "Checking olm-operator..." - if ! kubectl wait --for=condition=available deployment/olm-operator \ - -n openshift-operator-lifecycle-manager \ - --timeout=120s 2>&1; then - echo "ERROR: olm-operator is not ready" - kubectl get deployment/olm-operator \ - -n openshift-operator-lifecycle-manager -o yaml || true - return 1 - fi - - # Verify marketplace is accessible - echo "Checking openshift-marketplace..." - if ! kubectl get catalogsources -n openshift-marketplace &>/dev/null; then - echo "ERROR: Cannot access CatalogSources in openshift-marketplace" + echo "ERROR: operator-lifecycle-manager ClusterOperator is not Available" + kubectl get clusteroperator operator-lifecycle-manager -o yaml || true return 1 fi From e491ab473924532d91225bd5fb91e361e8ba8376 Mon Sep 17 00:00:00 2001 From: Oleksandr Shmaraiev Date: Sat, 7 Nov 2026 00:42:01 +0200 Subject: [PATCH 2/2] ci: bump copyright year in oci.Dockerfile The file was modified in the launcher hardening PR but the copyright year was left at 2025. Co-Authored-By: Claude Code Signed-off-by: Oleksandr Shmaraiev --- .ci/oci.Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.ci/oci.Dockerfile b/.ci/oci.Dockerfile index d426024bb..ce68b12f6 100644 --- a/.ci/oci.Dockerfile +++ b/.ci/oci.Dockerfile @@ -1,5 +1,5 @@ # -# Copyright (c) 2019-2025 Red Hat, Inc. +# Copyright (c) 2019-2026 Red Hat, Inc. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at