--- pytest attempt 2026-07-15T12:17:58.555978+00:00 (/.local/bin/uv --directory /home/odh/opendatahub-tests...) --- 2026-07-15T12:17:59.927181Z [info ] Writing tests log to /home/odh/opendatahub-tests/results/pytest-tests.log [conftest] 2026-07-15T12:17:59.927398Z [info ] Trying to get client via new_client_from_config [ocp_resources.resource] 2026-07-15T12:17:59.933714Z [info ] kind: DataScienceCluster api version: datasciencecluster.opendatahub.io/v2 [ocp_resources.resource] /home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/urllib3/connectionpool.py:1110: InsecureRequestWarning: Unverified HTTPS request is being made to host 'api.rh-nightly-pm.nuth.p3.openshiftapps.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings warnings.warn( /home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/urllib3/connectionpool.py:1110: InsecureRequestWarning: Unverified HTTPS request is being made to host 'api.rh-nightly-pm.nuth.p3.openshiftapps.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings warnings.warn( /home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/urllib3/connectionpool.py:1110: InsecureRequestWarning: Unverified HTTPS request is being made to host 'api.rh-nightly-pm.nuth.p3.openshiftapps.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings warnings.warn( 2026-07-15T12:18:00.044360Z [info ] kind: DSCInitialization api version: dscinitialization.opendatahub.io/v2 [ocp_resources.resource] /home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/urllib3/connectionpool.py:1110: InsecureRequestWarning: Unverified HTTPS request is being made to host 'api.rh-nightly-pm.nuth.p3.openshiftapps.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings warnings.warn( ============================= test session starts ============================== platform linux -- Python 3.14.6, pytest-9.1.1, pluggy-1.6.0 -- /home/odh/opendatahub-tests/.venv/bin/python3 cachedir: .pytest_cache metadata: {'Python': '3.14.6', 'Platform': 'Linux-5.14.0-570.120.1.el9_6.x86_64-x86_64-with-glibc2.42', 'Packages': {'pytest': '9.1.1', 'pluggy': '1.6.0'}, 'Plugins': {'anyio': '4.14.0', 'langsmith': '0.9.0', 'asyncio': '1.4.0', 'dependency': '0.6.1', 'html': '4.2.0', 'metadata': '3.1.1', 'order': '1.5.0', 'progress': '1.4.0', 'testconfig': '0.2.0', 'xdist': '3.8.0', 'syrupy': '5.3.2'}} rootdir: /home/odh/opendatahub-tests configfile: pytest.ini plugins: anyio-4.14.0, langsmith-0.9.0, asyncio-1.4.0, dependency-0.6.1, html-4.2.0, metadata-3.1.1, order-1.5.0, progress-1.4.0, testconfig-0.2.0, xdist-3.8.0, syrupy-5.3.2 asyncio: mode=Mode.STRICT, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function collecting ... collected 5 items / 2 deselected / 3 selected tests/cluster_health/test_operator_health.py::test_data_science_cluster_initialization_healthy  ----------------------------------- test_data_science_cluster_initialization_healthy ----------------------------------- -------------------------------------------------------- SETUP -------------------------------------------------------- 2026-07-15T12:18:00.103968Z [info ] Executing session fixture: event_loop_policy [conftest] 2026-07-15T12:18:00.104136Z [info ] Executing session fixture: _syrupy_apply_ide_patches [conftest] 2026-07-15T12:18:00.104256Z [info ] Executing session fixture: admin_client [conftest] 2026-07-15T12:18:00.104430Z [info ] Trying to get client via new_client_from_config [ocp_resources.resource] 2026-07-15T12:18:00.108565Z [info ] Executing session fixture: dsc_resource [conftest] 2026-07-15T12:18:00.108769Z [info ] kind: DataScienceCluster api version: datasciencecluster.opendatahub.io/v2 [ocp_resources.resource] 2026-07-15T12:18:00.173598Z [info ] Executing session fixture: tmp_path_factory [conftest] 2026-07-15T12:18:00.173759Z [info ] Executing session fixture: tests_tmp_dir [conftest] 2026-07-15T12:18:00.174816Z [info ] Executing session fixture: os_path_environment [conftest] 2026-07-15T12:18:00.175077Z [info ] Executing session fixture: tmpdir_factory [conftest] 2026-07-15T12:18:00.175329Z [info ] Executing session fixture: bin_directory [conftest] 2026-07-15T12:18:00.176202Z [info ] Executing session fixture: oc_binary_path [conftest] 2026-07-15T12:18:00.176330Z [info ] kind: ConsoleCLIDownload api version: console.openshift.io/v1 [ocp_resources.resource] 2026-07-15T12:18:00.210621Z [info ] All oc console cli download links: ['https://downloads-openshift-console.apps.rosa.rh-nightly-pm.nuth.p3.openshiftapps.com/amd64/linux/oc.tar'] [utilities.infra] name=utilities.infra 2026-07-15T12:18:00.210722Z [info ] Downloading archive using: url=https://downloads-openshift-console.apps.rosa.rh-nightly-pm.nuth.p3.openshiftapps.com/amd64/linux/oc.tar [utilities.infra] name=utilities.infra 2026-07-15T12:18:00.211722Z [info ] Waiting for 120 seconds [0:02:00], retry every 10 seconds. (Function: utilities.infra._download_with_retry Kwargs: {'url': 'https://downloads-openshift-console.apps.rosa.rh-nightly-pm.nuth.p3.openshiftapps.com/amd64/linux/oc.tar'}) [timeout_sampler] 2026-07-15T12:18:00.279036Z [info ] Elapsed time: 4.38690185546875e-05 [0:00:00.000044] [timeout_sampler] 2026-07-15T12:18:01.111009Z [info ] Extract the downloaded archive. [utilities.infra] name=utilities.infra 2026-07-15T12:18:01.249556Z [info ] Downloaded file: ['oc']  [utilities.infra] name=utilities.infra 2026-07-15T12:18:01.275878Z [info ] Executing session fixture: bin_directory_to_os_path [conftest] 2026-07-15T12:18:01.274550Z [info ] OC binary path: /tmp/pytest-iyEvMGRKTztexLpbhdZu8s/bin0/oc [tests.conftest] name=tests.conftest 2026-07-15T12:18:01.274599Z [info ] Adding /tmp/pytest-iyEvMGRKTztexLpbhdZu8s/bin0 to $PATH [tests.conftest] name=tests.conftest 2026-07-15T12:18:01.276279Z [info ] Executing session fixture: nodes [conftest] 2026-07-15T12:18:01.322875Z [info ] Executing session fixture: dsci_resource [conftest] 2026-07-15T12:18:01.323091Z [info ] kind: DSCInitialization api version: dscinitialization.opendatahub.io/v2 [ocp_resources.resource] 2026-07-15T12:18:01.343923Z [info ] Executing session fixture: record_testsuite_property [conftest] 2026-07-15T12:18:01.344093Z [info ] Executing session fixture: junitxml_plugin [conftest] 2026-07-15T12:18:01.344242Z [info ] Executing session fixture: cluster_sanity_scope_session [conftest] 2026-07-15T12:18:01.340568Z [info ] Skipping cluster sanity check because selected tests include cluster/operator/component health [tests.conftest] name=tests.conftest 2026-07-15T12:18:01.344574Z [info ] Executing session fixture: autouse_fixtures [conftest] --------------------------------------------------------- CALL --------------------------------------------------------- 2026-07-15T12:18:01.344849Z [info ] Waiting for 120 seconds [0:02:00], retry every 5 seconds. (Function: utilities.infra.wait_for_dsci_status_ready Kwargs: {'dsci_resource': }) [timeout_sampler] 2026-07-15T12:18:01.343351Z [info ] Wait for DSCI default-dsci to be in Ready status. [utilities.infra] name=utilities.infra 2026-07-15T12:18:01.345133Z [info ] Get DSCInitialization default-dsci status [ocp_resources DSCInitialization] PASSED2026-07-15T12:18:01.365812Z [info ] Elapsed time: 0.0001518726348876953 [0:00:00.000152] [timeout_sampler]  TEST: test_data_science_cluster_initialization_healthy STATUS: PASSED _ 1 of 3 completed, 1 Pass, 0 Fail, 0 Skip, 0 XPass, 0 XFail, 0 Error, 0 ReRun _ tests/cluster_health/test_operator_health.py::test_data_science_cluster_healthy ------------------------------------------------------- TEARDOWN -------------------------------------------------------  ------------------------------------------ test_data_science_cluster_healthy ------------------------------------------ -------------------------------------------------------- SETUP -------------------------------------------------------- --------------------------------------------------------- CALL --------------------------------------------------------- 2026-07-15T12:18:01.368159Z [info ] Waiting for 120 seconds [0:02:00], retry every 5 seconds. (Function: utilities.infra.wait_for_dsc_status_ready Kwargs: {'dsc_resource': }) [timeout_sampler] 2026-07-15T12:18:01.367076Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:18:01.368422Z [info ] Get DataScienceCluster default-dsc status [ocp_resources DataScienceCluster] 2026-07-15T12:18:06.410189Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:18:11.463244Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:18:16.517834Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:18:21.575003Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:18:26.628953Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:18:31.681866Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:18:36.734531Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:18:41.787213Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:18:46.850587Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:18:51.903899Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:18:56.957260Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:19:02.010643Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:19:07.066243Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:19:12.119188Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:19:17.171732Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:19:22.225437Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:19:27.278570Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:19:32.332255Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:19:37.385739Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:19:42.445342Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:19:47.498494Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:19:52.552274Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-15T12:19:57.627601Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra FAILED ______________________ test_data_science_cluster_healthy _______________________ Traceback (most recent call last): File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() ~~~~^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 167, in _multicall raise exception File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/capture.py", line 900, in pytest_runtest_call return (yield) ^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper return result.get_result() ~~~~~~~~~~~~~~~~~^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_result.py", line 103, in get_result raise exc.with_traceback(tb) File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper res = yield ^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/skipping.py", line 268, in pytest_runtest_call return (yield) ^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 167, in _multicall raise exception File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper return result.get_result() ~~~~~~~~~~~~~~~~~^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_result.py", line 103, in get_result raise exc.with_traceback(tb) File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper res = yield ^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/home/odh/opendatahub-tests/tests/cluster_health/test_operator_health.py", line 27, in test_data_science_cluster_healthy wait_for_dsc_status_ready(dsc_resource=dsc_resource) ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/timeout_sampler/__init__.py", line 280, in wrapper for sample in TimeoutSampler( ~~~~~~~~~~~~~~^ func=func, ^^^^^^^^^^ ...<7 lines>... **kwargs, ^^^^^^^^^ ): ^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/timeout_sampler/__init__.py", line 182, in __iter__ raise TimeoutExpiredError(self._get_exception_log(exp=last_exp), last_exp=last_exp) timeout_sampler.TimeoutExpiredError: Timed Out: 120 Function: utilities.infra.wait_for_dsc_status_ready Kwargs: {'dsc_resource': } Last exception: ResourceNotReadyError: DSC default-dsc is not ready. Current status: {'components': {'aigateway': {}, 'aipipelines': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Pipelines', 'repoUrl': 'https://github.com/kubeflow/pipelines', 'version': '2.16.0'}]}, 'dashboard': {'managementState': 'Managed'}, 'feastoperator': {'managementState': 'Managed', 'releases': [{'name': 'Feast', 'repoUrl': 'https://github.com/feast-dev/feast', 'version': '0.64.0'}]}, 'kserve': {'managementState': 'Managed', 'releases': [{'name': 'KServe', 'repoUrl': 'https://github.com/kserve/kserve/', 'version': 'v0.19.0'}, {'name': 'vLLM', 'repoUrl': 'https://github.com/vllm-project/vllm', 'version': 'v0.21.0'}, {'name': 'llm-d-router', 'repoUrl': 'https://github.com/llm-d/llm-d-router', 'version': 'v0.9.0'}, {'name': 'llm-d-workload-variant-autoscaler', 'repoUrl': 'https://github.com/llm-d/llm-d-workload-variant-autoscaler', 'version': 'v0.8.0'}]}, 'kueue': {'managementState': 'Unmanaged'}, 'llamastackoperator': {}, 'mlflowoperator': {'managementState': 'Managed', 'releases': [{'name': 'MLflow', 'repoUrl': 'https://github.com/mlflow/mlflow', 'version': 'v3.13.0'}]}, 'modelregistry': {'managementState': 'Managed', 'registriesNamespace': 'rhoai-model-registries', 'releases': [{'name': 'Kubeflow Model Registry', 'repoUrl': 'https://github.com/kubeflow/model-registry', 'version': 'latest'}, {'name': 'Open Data Hub Model Registry Operator', 'repoUrl': 'https://github.com/opendatahub-io/model-registry-operator', 'version': 'latest'}]}, 'ogx': {'managementState': 'Managed', 'releases': [{'name': 'OGX', 'repoUrl': 'https://github.com/opendatahub-io/ogx-distribution', 'version': 'v1.1.2'}, {'name': 'OGX Operator', 'repoUrl': 'https://github.com/opendatahub-io/ogx-k8s-operator', 'version': 'v0.11.0'}]}, 'ray': {'managementState': 'Managed', 'releases': [{'name': 'KubeRay', 'repoUrl': 'https://github.com/ray-project/kuberay', 'version': '1.4.2'}]}, 'sparkoperator': {'managementState': 'Managed', 'releases': [{'name': 'Spark Operator', 'repoUrl': 'https://github.com/opendatahub-io/spark-operator', 'version': 'v2.4.0'}, {'name': 'Spark', 'repoUrl': 'https://github.com/apache/spark', 'version': '4.0.1'}]}, 'trainer': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Trainer', 'repoUrl': 'https://github.com/kubeflow/trainer', 'version': '2.1.0'}]}, 'trainingoperator': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Training Operator', 'repoUrl': 'https://github.com/kubeflow/trainer', 'version': '1.9.0'}]}, 'trustyai': {'managementState': 'Managed', 'releases': [{'name': 'TrustyAI operator', 'repoUrl': 'https://github.com/trustyai-explainability/trustyai-service-operator', 'version': 'v1.37.0'}, {'name': 'TrustyAI service', 'repoUrl': 'https://github.com/trustyai-explainability/trustyai-explainability', 'version': 'v0.28.0'}, {'name': 'TrustyAI LMEval driver', 'repoUrl': 'https://github.com/trustyai-explainability/trustyai-service-operator', 'version': 'v1.37.0'}, {'name': 'TrustyAI LMEval job', 'repoUrl': 'https://github.com/EleutherAI/lm-evaluation-harness', 'version': 'v0.4.8'}, {'name': 'TrustyAI Guardrails orchestrator', 'repoUrl': 'https://github.com/foundation-model-stack/fms-guardrails-orchestrator', 'version': '0.9.4'}, {'name': 'TrustyAI builtin detectors', 'repoUrl': 'https://github.com/trustyai-explainability/guardrails-regex-detector', 'version': 'v0.2.0'}, {'name': 'TrustyAI sidecar gateway', 'repoUrl': 'https://github.com/trustyai-explainability/vllm-orchestrator-gateway', 'version': 'v0.2.1'}, {'name': 'EvalHub', 'repoUrl': 'https://github.com/eval-hub/eval-hub', 'version': 'v0.3.0'}]}, 'workbenches': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Notebook Controller', 'repoUrl': 'https://github.com/kubeflow/kubeflow', 'version': '1.10.0'}], 'workbenchNamespace': 'rhods-notebooks'}}, 'conditions': [{'lastTransitionTime': '2026-07-15T12:10:29Z', 'message': 'Some components are not ready: modelsasservice', 'reason': 'NotReady', 'status': 'False', 'type': 'Ready'}, {'lastTransitionTime': '2026-07-15T12:09:51Z', 'observedGeneration': 6, 'status': 'True', 'type': 'ProvisioningSucceeded'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'message': 'Some components are not ready: modelsasservice', 'reason': 'NotReady', 'status': 'False', 'type': 'ComponentsReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'AIPipelinesReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'DashboardReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'FeastOperatorReady'}, {'lastTransitionTime': '2026-07-15T11:54:12Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceDependencies'}, {'lastTransitionTime': '2026-07-15T11:54:12Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceWideEPDependencies'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'KserveReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'KueueReady'}, {'lastTransitionTime': '2026-07-15T11:53:51Z', 'status': 'True', 'type': 'LLM-D-WVADependencies'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'MLflowOperatorReady'}, {'lastTransitionTime': '2026-07-15T12:09:07Z', 'message': 'MaaS gateway annotations and Authorino TLS are correctly ' 'configured', 'reason': 'MaaSPrerequisitesMet', 'status': 'True', 'type': 'MaaSPrerequisitesAvailable'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'ModelControllerReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'ModelRegistryReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'message': 'apply: apply Deployment openshift-ingress/payload-pre-processing: ' 'Deployment.apps "payload-pre-processing" is invalid: ' 'spec.selector: Invalid value: ' 'v1.LabelSelector{MatchLabels:map[string]string{"app":"payload-pre-processing", ' '"app.kubernetes.io/component":"api", ' '"app.kubernetes.io/name":"maas-api", ' '"app.kubernetes.io/part-of":"models-as-a-service"}, ' 'MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is ' 'immutable', 'reason': 'PlatformReconcileFailed', 'status': 'False', 'type': 'ModelsAsServiceReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'OGXReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'RayReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'SparkOperatorReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'TrainerReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'TrainingOperatorReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'TrustyAIReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'WorkbenchesReady'}], 'observedGeneration': 2, 'phase': 'Not Ready', 'release': {'name': 'OpenShift AI Self-Managed', 'version': '3.5.0-ea.2'}}. _ 2 of 3 completed, 1 Pass, 1 Fail, 0 Skip, 0 XPass, 0 XFail, 0 Error, 0 ReRun _ tests/cluster_health/test_operator_health.py::test_pods_cluster_healthy[test_operator_namespace_pod_healthy]  TEST: test_data_science_cluster_healthy STATUS: FAILED 2026-07-15T12:20:02.690524Z [error ] Traceback (most recent call last): File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() ~~~~^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 167, in _multicall raise exception File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/capture.py", line 900, in pytest_runtest_call return (yield) ^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper return result.get_result() ~~~~~~~~~~~~~~~~~^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_result.py", line 103, in get_result raise exc.with_traceback(tb) File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper res = yield ^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/skipping.py", line 268, in pytest_runtest_call return (yield) ^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 167, in _multicall raise exception File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper return result.get_result() ~~~~~~~~~~~~~~~~~^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_result.py", line 103, in get_result raise exc.with_traceback(tb) File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper res = yield ^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/home/odh/opendatahub-tests/tests/cluster_health/test_operator_health.py", line 27, in test_data_science_cluster_healthy wait_for_dsc_status_ready(dsc_resource=dsc_resource) ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/timeout_sampler/__init__.py", line 280, in wrapper for sample in TimeoutSampler( ~~~~~~~~~~~~~~^ func=func, ^^^^^^^^^^ ...<7 lines>... **kwargs, ^^^^^^^^^ ): ^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/timeout_sampler/__init__.py", line 182, in __iter__ raise TimeoutExpiredError(self._get_exception_log(exp=last_exp), last_exp=last_exp) timeout_sampler.TimeoutExpiredError: Timed Out: 120 Function: utilities.infra.wait_for_dsc_status_ready Kwargs: {'dsc_resource': } Last exception: ResourceNotReadyError: DSC default-dsc is not ready. Current status: {'components': {'aigateway': {}, 'aipipelines': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Pipelines', 'repoUrl': 'https://github.com/kubeflow/pipelines', 'version': '2.16.0'}]}, 'dashboard': {'managementState': 'Managed'}, 'feastoperator': {'managementState': 'Managed', 'releases': [{'name': 'Feast', 'repoUrl': 'https://github.com/feast-dev/feast', 'version': '0.64.0'}]}, 'kserve': {'managementState': 'Managed', 'releases': [{'name': 'KServe', 'repoUrl': 'https://github.com/kserve/kserve/', 'version': 'v0.19.0'}, {'name': 'vLLM', 'repoUrl': 'https://github.com/vllm-project/vllm', 'version': 'v0.21.0'}, {'name': 'llm-d-router', 'repoUrl': 'https://github.com/llm-d/llm-d-router', 'version': 'v0.9.0'}, {'name': 'llm-d-workload-variant-autoscaler', 'repoUrl': 'https://github.com/llm-d/llm-d-workload-variant-autoscaler', 'version': 'v0.8.0'}]}, 'kueue': {'managementState': 'Unmanaged'}, 'llamastackoperator': {}, 'mlflowoperator': {'managementState': 'Managed', 'releases': [{'name': 'MLflow', 'repoUrl': 'https://github.com/mlflow/mlflow', 'version': 'v3.13.0'}]}, 'modelregistry': {'managementState': 'Managed', 'registriesNamespace': 'rhoai-model-registries', 'releases': [{'name': 'Kubeflow Model Registry', 'repoUrl': 'https://github.com/kubeflow/model-registry', 'version': 'latest'}, {'name': 'Open Data Hub Model Registry Operator', 'repoUrl': 'https://github.com/opendatahub-io/model-registry-operator', 'version': 'latest'}]}, 'ogx': {'managementState': 'Managed', 'releases': [{'name': 'OGX', 'repoUrl': 'https://github.com/opendatahub-io/ogx-distribution', 'version': 'v1.1.2'}, {'name': 'OGX Operator', 'repoUrl': 'https://github.com/opendatahub-io/ogx-k8s-operator', 'version': 'v0.11.0'}]}, 'ray': {'managementState': 'Managed', 'releases': [{'name': 'KubeRay', 'repoUrl': 'https://github.com/ray-project/kuberay', 'version': '1.4.2'}]}, 'sparkoperator': {'managementState': 'Managed', 'releases': [{'name': 'Spark Operator', 'repoUrl': 'https://github.com/opendatahub-io/spark-operator', 'version': 'v2.4.0'}, {'name': 'Spark', 'repoUrl': 'https://github.com/apache/spark', 'version': '4.0.1'}]}, 'trainer': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Trainer', 'repoUrl': 'https://github.com/kubeflow/trainer', 'version': '2.1.0'}]}, 'trainingoperator': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Training Operator', 'repoUrl': 'https://github.com/kubeflow/trainer', 'version': '1.9.0'}]}, 'trustyai': {'managementState': 'Managed', 'releases': [{'name': 'TrustyAI operator', 'repoUrl': 'https://github.com/trustyai-explainability/trustyai-service-operator', 'version': 'v1.37.0'}, {'name': 'TrustyAI service', 'repoUrl': 'https://github.com/trustyai-explainability/trustyai-explainability', 'version': 'v0.28.0'}, {'name': 'TrustyAI LMEval driver', 'repoUrl': 'https://github.com/trustyai-explainability/trustyai-service-operator', 'version': 'v1.37.0'}, {'name': 'TrustyAI LMEval job', 'repoUrl': 'https://github.com/EleutherAI/lm-evaluation-harness', 'version': 'v0.4.8'}, {'name': 'TrustyAI Guardrails orchestrator', 'repoUrl': 'https://github.com/foundation-model-stack/fms-guardrails-orchestrator', 'version': '0.9.4'}, {'name': 'TrustyAI builtin detectors', 'repoUrl': 'https://github.com/trustyai-explainability/guardrails-regex-detector', 'version': 'v0.2.0'}, {'name': 'TrustyAI sidecar gateway', 'repoUrl': 'https://github.com/trustyai-explainability/vllm-orchestrator-gateway', 'version': 'v0.2.1'}, {'name': 'EvalHub', 'repoUrl': 'https://github.com/eval-hub/eval-hub', 'version': 'v0.3.0'}]}, 'workbenches': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Notebook Controller', 'repoUrl': 'https://github.com/kubeflow/kubeflow', 'version': '1.10.0'}], 'workbenchNamespace': 'rhods-notebooks'}}, 'conditions': [{'lastTransitionTime': '2026-07-15T12:10:29Z', 'message': 'Some components are not ready: modelsasservice', 'reason': 'NotReady', 'status': 'False', 'type': 'Ready'}, {'lastTransitionTime': '2026-07-15T12:09:51Z', 'observedGeneration': 6, 'status': 'True', 'type': 'ProvisioningSucceeded'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'message': 'Some components are not ready: modelsasservice', 'reason': 'NotReady', 'status': 'False', 'type': 'ComponentsReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'AIPipelinesReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'DashboardReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'FeastOperatorReady'}, {'lastTransitionTime': '2026-07-15T11:54:12Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceDependencies'}, {'lastTransitionTime': '2026-07-15T11:54:12Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceWideEPDependencies'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'KserveReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'KueueReady'}, {'lastTransitionTime': '2026-07-15T11:53:51Z', 'status': 'True', 'type': 'LLM-D-WVADependencies'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'MLflowOperatorReady'}, {'lastTransitionTime': '2026-07-15T12:09:07Z', 'message': 'MaaS gateway annotations and Authorino TLS are correctly ' 'configured', 'reason': 'MaaSPrerequisitesMet', 'status': 'True', 'type': 'MaaSPrerequisitesAvailable'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'ModelControllerReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'ModelRegistryReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'message': 'apply: apply Deployment openshift-ingress/payload-pre-processing: ' 'Deployment.apps "payload-pre-processing" is invalid: ' 'spec.selector: Invalid value: ' 'v1.LabelSelector{MatchLabels:map[string]string{"app":"payload-pre-processing", ' '"app.kubernetes.io/component":"api", ' '"app.kubernetes.io/name":"maas-api", ' '"app.kubernetes.io/part-of":"models-as-a-service"}, ' 'MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is ' 'immutable', 'reason': 'PlatformReconcileFailed', 'status': 'False', 'type': 'ModelsAsServiceReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'OGXReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'RayReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'SparkOperatorReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'TrainerReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'TrainingOperatorReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'TrustyAIReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'WorkbenchesReady'}], 'observedGeneration': 2, 'phase': 'Not Ready', 'release': {'name': 'OpenShift AI Self-Managed', 'version': '3.5.0-ea.2'}}. [conftest] ------------------------------------------------------- TEARDOWN -------------------------------------------------------  ---------------------------- test_pods_cluster_healthy[test_operator_namespace_pod_healthy] ---------------------------- -------------------------------------------------------- SETUP -------------------------------------------------------- 2026-07-15T12:20:02.691079Z [info ] Executing function fixture: namespace_name [conftest] --------------------------------------------------------- CALL --------------------------------------------------------- 2026-07-15T12:20:02.689339Z [info ] Testing Pods in namespace redhat-ods-operator for cluster health [_pytest.compat] name=tests.cluster_health.test_operator_health 2026-07-15T12:20:02.691541Z [info ] Waiting for 180 seconds [0:03:00], retry every 5 seconds. (Function: utilities.general..lambda: admin_client.namespace_name.get_not_running_pods.list.Pod.get) [timeout_sampler] PASSED2026-07-15T12:20:02.860857Z [info ] Elapsed time: 4.2438507080078125e-05 [0:00:00.000042] [timeout_sampler]  TEST: test_pods_cluster_healthy[test_operator_namespace_pod_healthy] STATUS: PASSED ------------------------------------------------------- TEARDOWN ------------------------------------------------------- _ 3 of 3 completed, 2 Pass, 1 Fail, 0 Skip, 0 XPass, 0 XFail, 0 Error, 0 ReRun _ ====== 1 failed, 2 passed, 2 deselected, 58 warnings in 122.80s (0:02:02) ====== =================================== FAILURES =================================== ______________________ test_data_science_cluster_healthy _______________________ Traceback (most recent call last): File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/runner.py", line 361, in from_call result: TResult | None = func() ~~~~^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/runner.py", line 250, in lambda: runtest_hook(item=item, **kwds), ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 167, in _multicall raise exception File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/capture.py", line 900, in pytest_runtest_call return (yield) ^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper return result.get_result() ~~~~~~~~~~~~~~~~~^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_result.py", line 103, in get_result raise exc.with_traceback(tb) File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper res = yield ^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/skipping.py", line 268, in pytest_runtest_call return (yield) ^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/runner.py", line 184, in pytest_runtest_call item.runtest() ~~~~~~~~~~~~^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/python.py", line 1707, in runtest self.ihook.pytest_pyfunc_call(pyfuncitem=self) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_hooks.py", line 512, in __call__ return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_manager.py", line 120, in _hookexec return self._inner_hookexec(hook_name, methods, kwargs, firstresult) ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 167, in _multicall raise exception File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 139, in _multicall teardown.throw(exception) ~~~~~~~~~~~~~~^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 53, in run_old_style_hookwrapper return result.get_result() ~~~~~~~~~~~~~~~~~^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_result.py", line 103, in get_result raise exc.with_traceback(tb) File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 38, in run_old_style_hookwrapper res = yield ^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/pluggy/_callers.py", line 121, in _multicall res = hook_impl.function(*args) File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/_pytest/python.py", line 167, in pytest_pyfunc_call result = testfunction(**testargs) File "/home/odh/opendatahub-tests/tests/cluster_health/test_operator_health.py", line 27, in test_data_science_cluster_healthy wait_for_dsc_status_ready(dsc_resource=dsc_resource) ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/timeout_sampler/__init__.py", line 280, in wrapper for sample in TimeoutSampler( ~~~~~~~~~~~~~~^ func=func, ^^^^^^^^^^ ...<7 lines>... **kwargs, ^^^^^^^^^ ): ^ File "/home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/timeout_sampler/__init__.py", line 182, in __iter__ raise TimeoutExpiredError(self._get_exception_log(exp=last_exp), last_exp=last_exp) timeout_sampler.TimeoutExpiredError: Timed Out: 120 Function: utilities.infra.wait_for_dsc_status_ready Kwargs: {'dsc_resource': } Last exception: ResourceNotReadyError: DSC default-dsc is not ready. Current status: {'components': {'aigateway': {}, 'aipipelines': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Pipelines', 'repoUrl': 'https://github.com/kubeflow/pipelines', 'version': '2.16.0'}]}, 'dashboard': {'managementState': 'Managed'}, 'feastoperator': {'managementState': 'Managed', 'releases': [{'name': 'Feast', 'repoUrl': 'https://github.com/feast-dev/feast', 'version': '0.64.0'}]}, 'kserve': {'managementState': 'Managed', 'releases': [{'name': 'KServe', 'repoUrl': 'https://github.com/kserve/kserve/', 'version': 'v0.19.0'}, {'name': 'vLLM', 'repoUrl': 'https://github.com/vllm-project/vllm', 'version': 'v0.21.0'}, {'name': 'llm-d-router', 'repoUrl': 'https://github.com/llm-d/llm-d-router', 'version': 'v0.9.0'}, {'name': 'llm-d-workload-variant-autoscaler', 'repoUrl': 'https://github.com/llm-d/llm-d-workload-variant-autoscaler', 'version': 'v0.8.0'}]}, 'kueue': {'managementState': 'Unmanaged'}, 'llamastackoperator': {}, 'mlflowoperator': {'managementState': 'Managed', 'releases': [{'name': 'MLflow', 'repoUrl': 'https://github.com/mlflow/mlflow', 'version': 'v3.13.0'}]}, 'modelregistry': {'managementState': 'Managed', 'registriesNamespace': 'rhoai-model-registries', 'releases': [{'name': 'Kubeflow Model Registry', 'repoUrl': 'https://github.com/kubeflow/model-registry', 'version': 'latest'}, {'name': 'Open Data Hub Model Registry Operator', 'repoUrl': 'https://github.com/opendatahub-io/model-registry-operator', 'version': 'latest'}]}, 'ogx': {'managementState': 'Managed', 'releases': [{'name': 'OGX', 'repoUrl': 'https://github.com/opendatahub-io/ogx-distribution', 'version': 'v1.1.2'}, {'name': 'OGX Operator', 'repoUrl': 'https://github.com/opendatahub-io/ogx-k8s-operator', 'version': 'v0.11.0'}]}, 'ray': {'managementState': 'Managed', 'releases': [{'name': 'KubeRay', 'repoUrl': 'https://github.com/ray-project/kuberay', 'version': '1.4.2'}]}, 'sparkoperator': {'managementState': 'Managed', 'releases': [{'name': 'Spark Operator', 'repoUrl': 'https://github.com/opendatahub-io/spark-operator', 'version': 'v2.4.0'}, {'name': 'Spark', 'repoUrl': 'https://github.com/apache/spark', 'version': '4.0.1'}]}, 'trainer': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Trainer', 'repoUrl': 'https://github.com/kubeflow/trainer', 'version': '2.1.0'}]}, 'trainingoperator': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Training Operator', 'repoUrl': 'https://github.com/kubeflow/trainer', 'version': '1.9.0'}]}, 'trustyai': {'managementState': 'Managed', 'releases': [{'name': 'TrustyAI operator', 'repoUrl': 'https://github.com/trustyai-explainability/trustyai-service-operator', 'version': 'v1.37.0'}, {'name': 'TrustyAI service', 'repoUrl': 'https://github.com/trustyai-explainability/trustyai-explainability', 'version': 'v0.28.0'}, {'name': 'TrustyAI LMEval driver', 'repoUrl': 'https://github.com/trustyai-explainability/trustyai-service-operator', 'version': 'v1.37.0'}, {'name': 'TrustyAI LMEval job', 'repoUrl': 'https://github.com/EleutherAI/lm-evaluation-harness', 'version': 'v0.4.8'}, {'name': 'TrustyAI Guardrails orchestrator', 'repoUrl': 'https://github.com/foundation-model-stack/fms-guardrails-orchestrator', 'version': '0.9.4'}, {'name': 'TrustyAI builtin detectors', 'repoUrl': 'https://github.com/trustyai-explainability/guardrails-regex-detector', 'version': 'v0.2.0'}, {'name': 'TrustyAI sidecar gateway', 'repoUrl': 'https://github.com/trustyai-explainability/vllm-orchestrator-gateway', 'version': 'v0.2.1'}, {'name': 'EvalHub', 'repoUrl': 'https://github.com/eval-hub/eval-hub', 'version': 'v0.3.0'}]}, 'workbenches': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Notebook Controller', 'repoUrl': 'https://github.com/kubeflow/kubeflow', 'version': '1.10.0'}], 'workbenchNamespace': 'rhods-notebooks'}}, 'conditions': [{'lastTransitionTime': '2026-07-15T12:10:29Z', 'message': 'Some components are not ready: modelsasservice', 'reason': 'NotReady', 'status': 'False', 'type': 'Ready'}, {'lastTransitionTime': '2026-07-15T12:09:51Z', 'observedGeneration': 6, 'status': 'True', 'type': 'ProvisioningSucceeded'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'message': 'Some components are not ready: modelsasservice', 'reason': 'NotReady', 'status': 'False', 'type': 'ComponentsReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'AIPipelinesReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'DashboardReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'FeastOperatorReady'}, {'lastTransitionTime': '2026-07-15T11:54:12Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceDependencies'}, {'lastTransitionTime': '2026-07-15T11:54:12Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceWideEPDependencies'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'KserveReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'KueueReady'}, {'lastTransitionTime': '2026-07-15T11:53:51Z', 'status': 'True', 'type': 'LLM-D-WVADependencies'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'MLflowOperatorReady'}, {'lastTransitionTime': '2026-07-15T12:09:07Z', 'message': 'MaaS gateway annotations and Authorino TLS are correctly ' 'configured', 'reason': 'MaaSPrerequisitesMet', 'status': 'True', 'type': 'MaaSPrerequisitesAvailable'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'ModelControllerReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'ModelRegistryReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'message': 'apply: apply Deployment openshift-ingress/payload-pre-processing: ' 'Deployment.apps "payload-pre-processing" is invalid: ' 'spec.selector: Invalid value: ' 'v1.LabelSelector{MatchLabels:map[string]string{"app":"payload-pre-processing", ' '"app.kubernetes.io/component":"api", ' '"app.kubernetes.io/name":"maas-api", ' '"app.kubernetes.io/part-of":"models-as-a-service"}, ' 'MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is ' 'immutable', 'reason': 'PlatformReconcileFailed', 'status': 'False', 'type': 'ModelsAsServiceReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'OGXReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'RayReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'SparkOperatorReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'TrainerReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'TrainingOperatorReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'TrustyAIReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'WorkbenchesReady'}], 'observedGeneration': 2, 'phase': 'Not Ready', 'release': {'name': 'OpenShift AI Self-Managed', 'version': '3.5.0-ea.2'}}. =============================== warnings summary =============================== tests/cluster_health/test_operator_health.py: 58 warnings /home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/urllib3/connectionpool.py:1110: InsecureRequestWarning: Unverified HTTPS request is being made to host 'api.rh-nightly-pm.nuth.p3.openshiftapps.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings warnings.warn( -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html - generated xml file: /workspace/tests-shared/tests-payload/results/operator-health-core.xml - =========================== short test summary info ============================ FAILED tests/cluster_health/test_operator_health.py::test_data_science_cluster_healthy - timeout_sampler.TimeoutExpiredError: Timed Out: 120 Function: utilities.infra.wait_for_dsc_status_ready Kwargs: {'dsc_resource': } Last exception: ResourceNotReadyError: DSC default-dsc is not ready. Current status: {'components': {'aigateway': {}, 'aipipelines': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Pipelines', 'repoUrl': 'https://github.com/kubeflow/pipelines', 'version': '2.16.0'}]}, 'dashboard': {'managementState': 'Managed'}, 'feastoperator': {'managementState': 'Managed', 'releases': [{'name': 'Feast', 'repoUrl': 'https://github.com/feast-dev/feast', 'version': '0.64.0'}]}, 'kserve': {'managementState': 'Managed', 'releases': [{'name': 'KServe', 'repoUrl': 'https://github.com/kserve/kserve/', 'version': 'v0.19.0'}, {'name': 'vLLM', 'repoUrl': 'https://github.com/vllm-project/vllm', 'version': 'v0.21.0'}, {'name': 'llm-d-router', 'repoUrl': 'https://github.com/llm-d/llm-d-router', 'version': 'v0.9.0'}, {'name': 'llm-d-workload-variant-autoscaler', 'repoUrl': 'https://github.com/llm-d/llm-d-workload-variant-autoscaler', 'version': 'v0.8.0'}]}, 'kueue': {'managementState': 'Unmanaged'}, 'llamastackoperator': {}, 'mlflowoperator': {'managementState': 'Managed', 'releases': [{'name': 'MLflow', 'repoUrl': 'https://github.com/mlflow/mlflow', 'version': 'v3.13.0'}]}, 'modelregistry': {'managementState': 'Managed', 'registriesNamespace': 'rhoai-model-registries', 'releases': [{'name': 'Kubeflow Model Registry', 'repoUrl': 'https://github.com/kubeflow/model-registry', 'version': 'latest'}, {'name': 'Open Data Hub Model Registry Operator', 'repoUrl': 'https://github.com/opendatahub-io/model-registry-operator', 'version': 'latest'}]}, 'ogx': {'managementState': 'Managed', 'releases': [{'name': 'OGX', 'repoUrl': 'https://github.com/opendatahub-io/ogx-distribution', 'version': 'v1.1.2'}, {'name': 'OGX Operator', 'repoUrl': 'https://github.com/opendatahub-io/ogx-k8s-operator', 'version': 'v0.11.0'}]}, 'ray': {'managementState': 'Managed', 'releases': [{'name': 'KubeRay', 'repoUrl': 'https://github.com/ray-project/kuberay', 'version': '1.4.2'}]}, 'sparkoperator': {'managementState': 'Managed', 'releases': [{'name': 'Spark Operator', 'repoUrl': 'https://github.com/opendatahub-io/spark-operator', 'version': 'v2.4.0'}, {'name': 'Spark', 'repoUrl': 'https://github.com/apache/spark', 'version': '4.0.1'}]}, 'trainer': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Trainer', 'repoUrl': 'https://github.com/kubeflow/trainer', 'version': '2.1.0'}]}, 'trainingoperator': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Training Operator', 'repoUrl': 'https://github.com/kubeflow/trainer', 'version': '1.9.0'}]}, 'trustyai': {'managementState': 'Managed', 'releases': [{'name': 'TrustyAI operator', 'repoUrl': 'https://github.com/trustyai-explainability/trustyai-service-operator', 'version': 'v1.37.0'}, {'name': 'TrustyAI service', 'repoUrl': 'https://github.com/trustyai-explainability/trustyai-explainability', 'version': 'v0.28.0'}, {'name': 'TrustyAI LMEval driver', 'repoUrl': 'https://github.com/trustyai-explainability/trustyai-service-operator', 'version': 'v1.37.0'}, {'name': 'TrustyAI LMEval job', 'repoUrl': 'https://github.com/EleutherAI/lm-evaluation-harness', 'version': 'v0.4.8'}, {'name': 'TrustyAI Guardrails orchestrator', 'repoUrl': 'https://github.com/foundation-model-stack/fms-guardrails-orchestrator', 'version': '0.9.4'}, {'name': 'TrustyAI builtin detectors', 'repoUrl': 'https://github.com/trustyai-explainability/guardrails-regex-detector', 'version': 'v0.2.0'}, {'name': 'TrustyAI sidecar gateway', 'repoUrl': 'https://github.com/trustyai-explainability/vllm-orchestrator-gateway', 'version': 'v0.2.1'}, {'name': 'EvalHub', 'repoUrl': 'https://github.com/eval-hub/eval-hub', 'version': 'v0.3.0'}]}, 'workbenches': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Notebook Controller', 'repoUrl': 'https://github.com/kubeflow/kubeflow', 'version': '1.10.0'}], 'workbenchNamespace': 'rhods-notebooks'}}, 'conditions': [{'lastTransitionTime': '2026-07-15T12:10:29Z', 'message': 'Some components are not ready: modelsasservice', 'reason': 'NotReady', 'status': 'False', 'type': 'Ready'}, {'lastTransitionTime': '2026-07-15T12:09:51Z', 'observedGeneration': 6, 'status': 'True', 'type': 'ProvisioningSucceeded'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'message': 'Some components are not ready: modelsasservice', 'reason': 'NotReady', 'status': 'False', 'type': 'ComponentsReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'AIPipelinesReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'DashboardReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'FeastOperatorReady'}, {'lastTransitionTime': '2026-07-15T11:54:12Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceDependencies'}, {'lastTransitionTime': '2026-07-15T11:54:12Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceWideEPDependencies'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'KserveReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'KueueReady'}, {'lastTransitionTime': '2026-07-15T11:53:51Z', 'status': 'True', 'type': 'LLM-D-WVADependencies'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'MLflowOperatorReady'}, {'lastTransitionTime': '2026-07-15T12:09:07Z', 'message': 'MaaS gateway annotations and Authorino TLS are correctly ' 'configured', 'reason': 'MaaSPrerequisitesMet', 'status': 'True', 'type': 'MaaSPrerequisitesAvailable'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'ModelControllerReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'ModelRegistryReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'message': 'apply: apply Deployment openshift-ingress/payload-pre-processing: ' 'Deployment.apps "payload-pre-processing" is invalid: ' 'spec.selector: Invalid value: ' 'v1.LabelSelector{MatchLabels:map[string]string{"app":"payload-pre-processing", ' '"app.kubernetes.io/component":"api", ' '"app.kubernetes.io/name":"maas-api", ' '"app.kubernetes.io/part-of":"models-as-a-service"}, ' 'MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is ' 'immutable', 'reason': 'PlatformReconcileFailed', 'status': 'False', 'type': 'ModelsAsServiceReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'OGXReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'RayReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'SparkOperatorReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'TrainerReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'TrainingOperatorReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'TrustyAIReady'}, {'lastTransitionTime': '2026-07-15T12:10:29Z', 'status': 'True', 'type': 'WorkbenchesReady'}], 'observedGeneration': 2, 'phase': 'Not Ready', 'release': {'name': 'OpenShift AI Self-Managed', 'version': '3.5.0-ea.2'}}. ====== 1 failed, 2 passed, 2 deselected, 58 warnings in 122.80s (0:02:02) ======