--- BVT pytest attempt 2026-06-12T09:50:09.061611+00:00 (/.local/bin/uv run pytest...) --- 2026-06-12T09:50:11.141979Z [info ] Writing tests log to /home/odh/opendatahub-tests/results/pytest-tests.log [conftest] 2026-06-12T09:50:11.154812Z [info ] BEGIN (implicit)  [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.154997Z [info ] BEGIN (implicit)  [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.155136Z [info ] PRAGMA main.table_info("OpenDataHubTestTable") [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.155268Z [info ] PRAGMA main.table_info("OpenDataHubTestTable") [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.155441Z [info ] [raw sql] ()  [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.155651Z [info ] [raw sql] ()  [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.156102Z [info ] PRAGMA temp.table_info("OpenDataHubTestTable") [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.156240Z [info ] PRAGMA temp.table_info("OpenDataHubTestTable") [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.156395Z [info ] [raw sql] ()  [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.156550Z [info ] [raw sql] ()  [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.157496Z [info ]  CREATE TABLE "OpenDataHubTestTable" ( id INTEGER NOT NULL, test_name VARCHAR(500) NOT NULL, start_time INTEGER NOT NULL, PRIMARY KEY (id) )  [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.158045Z [info ]  CREATE TABLE "OpenDataHubTestTable" ( id INTEGER NOT NULL, test_name VARCHAR(500) NOT NULL, start_time INTEGER NOT NULL, PRIMARY KEY (id) )  [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.158205Z [info ] [no key 0.00008s] ()  [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.158350Z [info ] [no key 0.00008s] ()  [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.158483Z [info ] COMMIT  [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.158635Z [info ] COMMIT  [sqlalchemy.engine.Engine] 2026-06-12T09:50:11.161609Z [info ] Trying to get client via new_client_from_config [ocp_resources.resource] /home/odh/opendatahub-tests/.venv/lib64/python3.14/site-packages/urllib3/connectionpool.py:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'api.ods-qe-psi-23.osp.rh-ods.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings warnings.warn( 2026-06-12T09:50:11.279976Z [info ] kind: DataScienceCluster api version: datasciencecluster.opendatahub.io/v2 [ocp_resources.resource] 2026-06-12T09:50:11.332005Z [info ] kind: DSCInitialization api version: dscinitialization.opendatahub.io/v2 [ocp_resources.resource] 2026-06-12T09:50:11.357365Z [info ] Running model registry tests against default namespace [conftest] 2026-06-12T09:50:11.357517Z [info ] kind: DataScienceCluster api version: datasciencecluster.opendatahub.io/v2 [ocp_resources.resource] ============================= test session starts ============================== platform linux -- Python 3.14.5, pytest-9.0.3, pluggy-1.6.0 -- /home/odh/opendatahub-tests/.venv/bin/python cachedir: .pytest_cache metadata: {'Python': '3.14.5', 'Platform': 'Linux-5.14.0-427.115.1.el9_4.x86_64-x86_64-with-glibc2.42', 'Packages': {'pytest': '9.0.3', 'pluggy': '1.6.0'}, 'Plugins': {'anyio': '4.13.0', 'asyncio': '1.3.0', 'dependency': '0.6.1', 'html': '4.2.0', 'metadata': '3.1.1', 'order': '1.3.0', 'progress': '1.4.0', 'testconfig': '0.2.0', 'xdist': '3.8.0', 'syrupy': '5.1.0'}} rootdir: /home/odh/opendatahub-tests configfile: pytest.ini plugins: anyio-4.13.0, asyncio-1.3.0, dependency-0.6.1, html-4.2.0, metadata-3.1.1, order-1.3.0, progress-1.4.0, testconfig-0.2.0, xdist-3.8.0, syrupy-5.1.0 asyncio: mode=Mode.STRICT, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function collecting ... collected 445 items / 413 deselected / 32 selected tests/ai_hub/image_validation/test_verify_rhoai_images.py::TestModelRegistryImages::test_verify_model_registry_pod_images[model_registry_metadata_db_resources0-model_registry_instance0-model_registry_instance_pods_by_label0]  test_verify_model_registry_pod_images[model_registry_metadata_db_resources0-model_registry_instance0-model_registry_instance_pods_by_label0]  -------------------------------------------------------- SETUP -------------------------------------------------------- 2026-06-12T09:50:12.386380Z [info ] (OpenDataHubTestTable|OpenDataHubTestTable) _post_configure_properties() started [sqlalchemy.orm.mapper.Mapper] 2026-06-12T09:50:12.386616Z [info ] (OpenDataHubTestTable|OpenDataHubTestTable) initialize prop id [sqlalchemy.orm.mapper.Mapper] 2026-06-12T09:50:12.387348Z [info ] (OpenDataHubTestTable|OpenDataHubTestTable) initialize prop test_name [sqlalchemy.orm.mapper.Mapper] 2026-06-12T09:50:12.387475Z [info ] (OpenDataHubTestTable|OpenDataHubTestTable) initialize prop start_time [sqlalchemy.orm.mapper.Mapper] 2026-06-12T09:50:12.388064Z [info ] (OpenDataHubTestTable|OpenDataHubTestTable) _post_configure_properties() complete [sqlalchemy.orm.mapper.Mapper] 2026-06-12T09:50:12.388278Z [info ] BEGIN (implicit)  [sqlalchemy.engine.Engine] 2026-06-12T09:50:12.389617Z [info ] BEGIN (implicit)  [sqlalchemy.engine.Engine] 2026-06-12T09:50:12.389799Z [info ] INSERT INTO "OpenDataHubTestTable" (test_name, start_time) VALUES (?, ?) [sqlalchemy.engine.Engine] 2026-06-12T09:50:12.389927Z [info ] INSERT INTO "OpenDataHubTestTable" (test_name, start_time) VALUES (?, ?) [sqlalchemy.engine.Engine] 2026-06-12T09:50:12.390098Z [info ] [generated in 0.00019s] ('/home/odh/opendatahub-tests/tests/ai_hub/image_validation/test_verify_rhoai_images.py::test_verify_model_registry_pod_images[model_registry_metadata_db_resources0-model_registry_instance0-model_registry_instance_pods_by_label0]', 1781257812) [sqlalchemy.engine.Engine] 2026-06-12T09:50:12.390245Z [info ] [generated in 0.00019s] ('/home/odh/opendatahub-tests/tests/ai_hub/image_validation/test_verify_rhoai_images.py::test_verify_model_registry_pod_images[model_registry_metadata_db_resources0-model_registry_instance0-model_registry_instance_pods_by_label0]', 1781257812) [sqlalchemy.engine.Engine] 2026-06-12T09:50:12.392968Z [info ] COMMIT  [sqlalchemy.engine.Engine] 2026-06-12T09:50:12.395197Z [info ] COMMIT  [sqlalchemy.engine.Engine] 2026-06-12T09:50:12.395351Z [info ] Executing session fixture: event_loop_policy [conftest] 2026-06-12T09:50:12.395482Z [info ] Executing session fixture: _syrupy_apply_ide_patches [conftest] 2026-06-12T09:50:12.395639Z [info ] Executing session fixture: admin_client [conftest] 2026-06-12T09:50:12.395772Z [info ] Trying to get client via new_client_from_config [ocp_resources.resource] 2026-06-12T09:50:12.395896Z [info ] Executing session fixture: dsc_resource [conftest] 2026-06-12T09:50:12.396027Z [info ] kind: DataScienceCluster api version: datasciencecluster.opendatahub.io/v2 [ocp_resources.resource] 2026-06-12T09:50:12.465422Z [info ] Executing session fixture: tmp_path_factory [conftest] 2026-06-12T09:50:12.465826Z [info ] Executing session fixture: tests_tmp_dir [conftest] 2026-06-12T09:50:12.466846Z [info ] Executing session fixture: os_path_environment [conftest] 2026-06-12T09:50:12.466980Z [info ] Executing session fixture: tmpdir_factory [conftest] 2026-06-12T09:50:12.467099Z [info ] Executing session fixture: bin_directory [conftest] 2026-06-12T09:50:12.468161Z [info ] Executing session fixture: oc_binary_path [conftest] 2026-06-12T09:50:12.483478Z [info ] kind: ConsoleCLIDownload api version: console.openshift.io/v1 [ocp_resources.resource] 2026-06-12T09:50:12.519799Z [info ] All oc console cli download links: ['https://downloads-openshift-console.apps.ods-qe-psi-23.osp.rh-ods.com/amd64/linux/oc.tar'] [utilities.infra] name=utilities.infra 2026-06-12T09:50:12.519921Z [info ] Downloading archive using: url=https://downloads-openshift-console.apps.ods-qe-psi-23.osp.rh-ods.com/amd64/linux/oc.tar [utilities.infra] name=utilities.infra 2026-06-12T09:50:32.946944Z [info ] Extract the downloaded archive. [utilities.infra] name=utilities.infra 2026-06-12T09:50:33.065603Z [info ] Downloaded file: ['oc']  [utilities.infra] name=utilities.infra 2026-06-12T09:50:33.090792Z [info ] Executing session fixture: bin_directory_to_os_path [conftest] 2026-06-12T09:50:33.087248Z [info ] OC binary path: /tmp/pytest-jd3wcz9XUay9qRWjZNnmVC/bin0/oc [tests.conftest] name=tests.conftest 2026-06-12T09:50:33.087335Z [info ] Adding /tmp/pytest-jd3wcz9XUay9qRWjZNnmVC/bin0 to $PATH [tests.conftest] name=tests.conftest 2026-06-12T09:50:33.091161Z [info ] Executing session fixture: nodes [conftest] 2026-06-12T09:50:34.069893Z [info ] Executing session fixture: dsci_resource [conftest] 2026-06-12T09:50:34.070049Z [info ] kind: DSCInitialization api version: dscinitialization.opendatahub.io/v2 [ocp_resources.resource] 2026-06-12T09:50:34.085928Z [info ] Executing session fixture: record_testsuite_property [conftest] 2026-06-12T09:50:34.086088Z [info ] Executing session fixture: junitxml_plugin [conftest] 2026-06-12T09:50:34.086235Z [info ] Executing session fixture: cluster_sanity_scope_session [conftest] 2026-06-12T09:50:34.085203Z [info ] Check cluster sanity.  [utilities.infra] name=utilities.infra 2026-06-12T09:50:34.086638Z [info ] Verify all nodes are in a healthy condition. [ocp_utilities.infra] 2026-06-12T09:50:34.172345Z [info ] Verify all nodes are schedulable. [ocp_utilities.infra] 2026-06-12T09:50:34.264298Z [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-06-12T09:50:34.263704Z [info ] Wait for DSCI default-dsci to be in Ready status. [utilities.infra] name=utilities.infra 2026-06-12T09:50:34.264633Z [info ] Get DSCInitialization default-dsci status [ocp_resources DSCInitialization] 2026-06-12T09:50:34.277159Z [info ] Elapsed time: 0.0002067089080810547 [0:00:00.000207] [timeout_sampler] 2026-06-12T09:50:34.277329Z [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-06-12T09:50:34.276675Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:50:34.277719Z [info ] Get DataScienceCluster default-dsc status [ocp_resources DataScienceCluster] 2026-06-12T09:50:39.311289Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:50:44.390011Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:50:49.425311Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:50:54.468464Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:50:59.515097Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:51:04.549154Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:51:09.592318Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:51:14.634592Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:51:19.686296Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:51:24.726064Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:51:29.796985Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:51:34.841862Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:51:39.875839Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:51:44.923332Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:51:49.974783Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:51:55.017850Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:52:00.052507Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:52:05.100053Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:52:10.143885Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:52:15.198075Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:52:20.236092Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:52:25.279256Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:52:30.323084Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:52:35.366879Z [error ] Cluster sanity check failed: 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': {'aipipelines': {'managementState': 'Removed'}, 'dashboard': {'managementState': 'Managed'}, 'feastoperator': {'managementState': 'Removed'}, 'kserve': {'managementState': 'Managed', 'releases': [{'name': 'KServe', 'repoUrl': 'https://github.com/kserve/kserve/', 'version': 'v0.17.0'}, {'name': 'vLLM', 'repoUrl': 'https://github.com/vllm-project/vllm', 'version': 'v0.18.0'}, {'name': 'llm-d-inference-scheduler', 'repoUrl': 'https://github.com/llm-d/llm-d-inference-scheduler', 'version': 'v0.7.1'}, {'name': 'llm-d-workload-variant-autoscaler', 'repoUrl': 'https://github.com/llm-d/llm-d-workload-variant-autoscaler', 'version': 'v0.6.0'}]}, 'kueue': {'managementState': 'Removed'}, 'llamastackoperator': {'managementState': 'Removed'}, 'mlflowoperator': {'managementState': 'Removed'}, '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'}]}, 'ray': {'managementState': 'Removed'}, 'sparkoperator': {'managementState': 'Removed'}, 'trainer': {'managementState': 'Removed'}, 'trainingoperator': {'managementState': 'Removed'}, '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'}]}, 'workbenches': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Notebook Controller', 'repoUrl': 'https://github.com/kubeflow/kubeflow', 'version': '1.10.0'}], 'workbenchNamespace': 'rhods-notebooks'}}, 'conditions': [{'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'failure deploying resource /default-kserve: apply failed ' 'components.platform.opendatahub.io/v1alpha1, Kind=Kserve: unable ' 'to patch components.platform.opendatahub.io/v1alpha1, Kind=Kserve ' 'default-kserve: Kserve.components.platform.opendatahub.io ' '"default-kserve" is invalid: [spec.modelsAsService: Invalid ' 'value: "null": spec.modelsAsService in body must be of type ' 'object: "null", : Invalid value: "null": some validation ' 'rules were not checked because the object was invalid; correct ' 'the existing errors to complete validation]', 'reason': 'Error', 'status': 'False', 'type': 'Ready'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'failure deploying resource /default-kserve: apply failed ' 'components.platform.opendatahub.io/v1alpha1, Kind=Kserve: unable ' 'to patch components.platform.opendatahub.io/v1alpha1, Kind=Kserve ' 'default-kserve: Kserve.components.platform.opendatahub.io ' '"default-kserve" is invalid: [spec.modelsAsService: Invalid ' 'value: "null": spec.modelsAsService in body must be of type ' 'object: "null", : Invalid value: "null": some validation ' 'rules were not checked because the object was invalid; correct ' 'the existing errors to complete validation]', 'observedGeneration': 3, 'reason': 'Error', 'status': 'False', 'type': 'ProvisioningSucceeded'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'ComponentsReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'AIPipelinesReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'DashboardReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'FeastOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceDependencies'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceWideEPDependencies'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'KserveReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'KueueReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'LlamaStackOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'MLflowOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'ModelControllerReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'ModelRegistryReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'ModelsAsServiceReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'RayReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'SparkOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'TrainerReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'TrainingOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'TrustyAIReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'WorkbenchesReady'}], 'observedGeneration': 1, 'phase': 'Not Ready', 'release': {'name': 'OpenShift AI Self-Managed', 'version': '3.4.1'}}. [utilities.infra] name=utilities.infra =============== 413 deselected, 3 warnings in 144.51s (0:02:24) ================ =============== 413 deselected, 3 warnings in 144.51s (0:02:24) ================ ! _pytest.outcomes.Exit: Cluster sanity check failed: 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': {'aipipelines': {'managementState': 'Removed'}, 'dashboard': {'managementState': 'Managed'}, 'feastoperator': {'managementState': 'Removed'}, 'kserve': {'managementState': 'Managed', 'releases': [{'name': 'KServe', 'repoUrl': 'https://github.com/kserve/kserve/', 'version': 'v0.17.0'}, {'name': 'vLLM', 'repoUrl': 'https://github.com/vllm-project/vllm', 'version': 'v0.18.0'}, {'name': 'llm-d-inference-scheduler', 'repoUrl': 'https://github.com/llm-d/llm-d-inference-scheduler', 'version': 'v0.7.1'}, {'name': 'llm-d-workload-variant-autoscaler', 'repoUrl': 'https://github.com/llm-d/llm-d-workload-variant-autoscaler', 'version': 'v0.6.0'}]}, 'kueue': {'managementState': 'Removed'}, 'llamastackoperator': {'managementState': 'Removed'}, 'mlflowoperator': {'managementState': 'Removed'}, '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'}]}, 'ray': {'managementState': 'Removed'}, 'sparkoperator': {'managementState': 'Removed'}, 'trainer': {'managementState': 'Removed'}, 'trainingoperator': {'managementState': 'Removed'}, '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'}]}, 'workbenches': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Notebook Controller', 'repoUrl': 'https://github.com/kubeflow/kubeflow', 'version': '1.10.0'}], 'workbenchNamespace': 'rhods-notebooks'}}, 'conditions': [{'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'failure deploying resource /default-kserve: apply failed ' 'components.platform.opendatahub.io/v1alpha1, Kind=Kserve: unable ' 'to patch components.platform.opendatahub.io/v1alpha1, Kind=Kserve ' 'default-kserve: Kserve.components.platform.opendatahub.io ' '"default-kserve" is invalid: [spec.modelsAsService: Invalid ' 'value: "null": spec.modelsAsService in body must be of type ' 'object: "null", : Invalid value: "null": some validation ' 'rules were not checked because the object was invalid; correct ' 'the existing errors to complete validation]', 'reason': 'Error', 'status': 'False', 'type': 'Ready'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'failure deploying resource /default-kserve: apply failed ' 'components.platform.opendatahub.io/v1alpha1, Kind=Kserve: unable ' 'to patch components.platform.opendatahub.io/v1alpha1, Kind=Kserve ' 'default-kserve: Kserve.components.platform.opendatahub.io ' '"default-kserve" is invalid: [spec.modelsAsService: Invalid ' 'value: "null": spec.modelsAsService in body must be of type ' 'object: "null", : Invalid value: "null": some validation ' 'rules were not checked because the object was invalid; correct ' 'the existing errors to complete validation]', 'observedGeneration': 3, 'reason': 'Error', 'status': 'False', 'type': 'ProvisioningSucceeded'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'ComponentsReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'AIPipelinesReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'DashboardReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'FeastOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceDependencies'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceWideEPDependencies'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'KserveReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'KueueReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'LlamaStackOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'MLflowOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'ModelControllerReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'ModelRegistryReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'ModelsAsServiceReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'RayReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'SparkOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'TrainerReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'TrainingOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'TrustyAIReady'}, {'lastTransitionTime': '2026-06-12T09:52:30Z', 'status': 'True', 'type': 'WorkbenchesReady'}], 'observedGeneration': 1, 'phase': 'Not Ready', 'release': {'name': 'OpenShift AI Self-Managed', 'version': '3.4.1'}}. ! --- BVT pytest attempt 2026-06-12T09:52:36.901648+00:00 (/.local/bin/uv run pytest...) --- Bytecode compiled 9467 files in 405ms 2026-06-12T09:52:39.080713Z [info ] Writing tests log to /home/odh/opendatahub-tests/results/pytest-tests.log [conftest] 2026-06-12T09:52:39.089759Z [info ] BEGIN (implicit)  [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.089933Z [info ] BEGIN (implicit)  [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.090076Z [info ] PRAGMA main.table_info("OpenDataHubTestTable") [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.090205Z [info ] PRAGMA main.table_info("OpenDataHubTestTable") [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.090624Z [info ] [raw sql] ()  [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.090780Z [info ] [raw sql] ()  [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.091422Z [info ] PRAGMA temp.table_info("OpenDataHubTestTable") [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.091788Z [info ] PRAGMA temp.table_info("OpenDataHubTestTable") [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.091950Z [info ] [raw sql] ()  [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.092085Z [info ] [raw sql] ()  [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.092211Z [info ]  CREATE TABLE "OpenDataHubTestTable" ( id INTEGER NOT NULL, test_name VARCHAR(500) NOT NULL, start_time INTEGER NOT NULL, PRIMARY KEY (id) )  [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.092331Z [info ]  CREATE TABLE "OpenDataHubTestTable" ( id INTEGER NOT NULL, test_name VARCHAR(500) NOT NULL, start_time INTEGER NOT NULL, PRIMARY KEY (id) )  [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.092459Z [info ] [no key 0.00005s] ()  [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.092614Z [info ] [no key 0.00005s] ()  [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.093057Z [info ] COMMIT  [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.093178Z [info ] COMMIT  [sqlalchemy.engine.Engine] 2026-06-12T09:52:39.095746Z [info ] Trying to get client via new_client_from_config [ocp_resources.resource] 2026-06-12T09:52:39.100107Z [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:1097: InsecureRequestWarning: Unverified HTTPS request is being made to host 'api.ods-qe-psi-23.osp.rh-ods.com'. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#tls-warnings warnings.warn( 2026-06-12T09:52:39.212937Z [info ] kind: DSCInitialization api version: dscinitialization.opendatahub.io/v2 [ocp_resources.resource] 2026-06-12T09:52:39.253063Z [info ] Running model registry tests against default namespace [conftest] 2026-06-12T09:52:39.253213Z [info ] kind: DataScienceCluster api version: datasciencecluster.opendatahub.io/v2 [ocp_resources.resource] ============================= test session starts ============================== platform linux -- Python 3.14.5, pytest-9.0.3, pluggy-1.6.0 -- /home/odh/opendatahub-tests/.venv/bin/python cachedir: .pytest_cache metadata: {'Python': '3.14.5', 'Platform': 'Linux-5.14.0-427.115.1.el9_4.x86_64-x86_64-with-glibc2.42', 'Packages': {'pytest': '9.0.3', 'pluggy': '1.6.0'}, 'Plugins': {'anyio': '4.13.0', 'asyncio': '1.3.0', 'dependency': '0.6.1', 'html': '4.2.0', 'metadata': '3.1.1', 'order': '1.3.0', 'progress': '1.4.0', 'testconfig': '0.2.0', 'xdist': '3.8.0', 'syrupy': '5.1.0'}} rootdir: /home/odh/opendatahub-tests configfile: pytest.ini plugins: anyio-4.13.0, asyncio-1.3.0, dependency-0.6.1, html-4.2.0, metadata-3.1.1, order-1.3.0, progress-1.4.0, testconfig-0.2.0, xdist-3.8.0, syrupy-5.1.0 asyncio: mode=Mode.STRICT, debug=False, asyncio_default_fixture_loop_scope=None, asyncio_default_test_loop_scope=function collecting ... collected 445 items / 413 deselected / 32 selected tests/ai_hub/image_validation/test_verify_rhoai_images.py::TestModelRegistryImages::test_verify_model_registry_pod_images[model_registry_metadata_db_resources0-model_registry_instance0-model_registry_instance_pods_by_label0]  test_verify_model_registry_pod_images[model_registry_metadata_db_resources0-model_registry_instance0-model_registry_instance_pods_by_label0]  -------------------------------------------------------- SETUP -------------------------------------------------------- 2026-06-12T09:52:40.002740Z [info ] (OpenDataHubTestTable|OpenDataHubTestTable) _post_configure_properties() started [sqlalchemy.orm.mapper.Mapper] 2026-06-12T09:52:40.002900Z [info ] (OpenDataHubTestTable|OpenDataHubTestTable) initialize prop id [sqlalchemy.orm.mapper.Mapper] 2026-06-12T09:52:40.003024Z [info ] (OpenDataHubTestTable|OpenDataHubTestTable) initialize prop test_name [sqlalchemy.orm.mapper.Mapper] 2026-06-12T09:52:40.003150Z [info ] (OpenDataHubTestTable|OpenDataHubTestTable) initialize prop start_time [sqlalchemy.orm.mapper.Mapper] 2026-06-12T09:52:40.003275Z [info ] (OpenDataHubTestTable|OpenDataHubTestTable) _post_configure_properties() complete [sqlalchemy.orm.mapper.Mapper] 2026-06-12T09:52:40.003398Z [info ] BEGIN (implicit)  [sqlalchemy.engine.Engine] 2026-06-12T09:52:40.003517Z [info ] BEGIN (implicit)  [sqlalchemy.engine.Engine] 2026-06-12T09:52:40.004062Z [info ] INSERT INTO "OpenDataHubTestTable" (test_name, start_time) VALUES (?, ?) [sqlalchemy.engine.Engine] 2026-06-12T09:52:40.004190Z [info ] INSERT INTO "OpenDataHubTestTable" (test_name, start_time) VALUES (?, ?) [sqlalchemy.engine.Engine] 2026-06-12T09:52:40.004353Z [info ] [generated in 0.00014s] ('/home/odh/opendatahub-tests/tests/ai_hub/image_validation/test_verify_rhoai_images.py::test_verify_model_registry_pod_images[model_registry_metadata_db_resources0-model_registry_instance0-model_registry_instance_pods_by_label0]', 1781257960) [sqlalchemy.engine.Engine] 2026-06-12T09:52:40.103562Z [info ] [generated in 0.00014s] ('/home/odh/opendatahub-tests/tests/ai_hub/image_validation/test_verify_rhoai_images.py::test_verify_model_registry_pod_images[model_registry_metadata_db_resources0-model_registry_instance0-model_registry_instance_pods_by_label0]', 1781257960) [sqlalchemy.engine.Engine] 2026-06-12T09:52:40.103747Z [info ] COMMIT  [sqlalchemy.engine.Engine] 2026-06-12T09:52:40.103876Z [info ] COMMIT  [sqlalchemy.engine.Engine] 2026-06-12T09:52:40.105111Z [info ] Executing session fixture: event_loop_policy [conftest] 2026-06-12T09:52:40.105267Z [info ] Executing session fixture: _syrupy_apply_ide_patches [conftest] 2026-06-12T09:52:40.107237Z [info ] Executing session fixture: admin_client [conftest] 2026-06-12T09:52:40.107424Z [info ] Trying to get client via new_client_from_config [ocp_resources.resource] 2026-06-12T09:52:40.111653Z [info ] Executing session fixture: dsc_resource [conftest] 2026-06-12T09:52:40.111793Z [info ] kind: DataScienceCluster api version: datasciencecluster.opendatahub.io/v2 [ocp_resources.resource] 2026-06-12T09:52:40.200384Z [info ] Executing session fixture: tmp_path_factory [conftest] 2026-06-12T09:52:40.200581Z [info ] Executing session fixture: tests_tmp_dir [conftest] 2026-06-12T09:52:40.201382Z [info ] Executing session fixture: os_path_environment [conftest] 2026-06-12T09:52:40.201546Z [info ] Executing session fixture: tmpdir_factory [conftest] 2026-06-12T09:52:40.201744Z [info ] Executing session fixture: bin_directory [conftest] 2026-06-12T09:52:40.202641Z [info ] Executing session fixture: oc_binary_path [conftest] 2026-06-12T09:52:40.202819Z [info ] kind: ConsoleCLIDownload api version: console.openshift.io/v1 [ocp_resources.resource] 2026-06-12T09:52:40.227111Z [info ] All oc console cli download links: ['https://downloads-openshift-console.apps.ods-qe-psi-23.osp.rh-ods.com/amd64/linux/oc.tar'] [utilities.infra] name=utilities.infra 2026-06-12T09:52:40.227194Z [info ] Downloading archive using: url=https://downloads-openshift-console.apps.ods-qe-psi-23.osp.rh-ods.com/amd64/linux/oc.tar [utilities.infra] name=utilities.infra 2026-06-12T09:52:42.257835Z [info ] Extract the downloaded archive. [utilities.infra] name=utilities.infra 2026-06-12T09:52:42.555823Z [info ] Downloaded file: ['oc']  [utilities.infra] name=utilities.infra 2026-06-12T09:52:42.586543Z [info ] Executing session fixture: bin_directory_to_os_path [conftest] 2026-06-12T09:52:42.584953Z [info ] OC binary path: /tmp/pytest-TSikqFFQzRH36HyLgj8ncN/bin0/oc [tests.conftest] name=tests.conftest 2026-06-12T09:52:42.585017Z [info ] Adding /tmp/pytest-TSikqFFQzRH36HyLgj8ncN/bin0 to $PATH [tests.conftest] name=tests.conftest 2026-06-12T09:52:42.586986Z [info ] Executing session fixture: nodes [conftest] 2026-06-12T09:52:42.638076Z [info ] Executing session fixture: dsci_resource [conftest] 2026-06-12T09:52:42.638254Z [info ] kind: DSCInitialization api version: dscinitialization.opendatahub.io/v2 [ocp_resources.resource] 2026-06-12T09:52:42.652262Z [info ] Executing session fixture: record_testsuite_property [conftest] 2026-06-12T09:52:42.652461Z [info ] Executing session fixture: junitxml_plugin [conftest] 2026-06-12T09:52:42.652643Z [info ] Executing session fixture: cluster_sanity_scope_session [conftest] 2026-06-12T09:52:42.651205Z [info ] Check cluster sanity.  [utilities.infra] name=utilities.infra 2026-06-12T09:52:42.652947Z [info ] Verify all nodes are in a healthy condition. [ocp_utilities.infra] 2026-06-12T09:52:42.731977Z [info ] Verify all nodes are schedulable. [ocp_utilities.infra] 2026-06-12T09:52:42.809935Z [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-06-12T09:52:42.808861Z [info ] Wait for DSCI default-dsci to be in Ready status. [utilities.infra] name=utilities.infra 2026-06-12T09:52:42.810252Z [info ] Get DSCInitialization default-dsci status [ocp_resources DSCInitialization] 2026-06-12T09:52:42.822399Z [info ] Elapsed time: 0.00013899803161621094 [0:00:00.000139] [timeout_sampler] 2026-06-12T09:52:42.822594Z [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-06-12T09:52:42.821648Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:52:42.822907Z [info ] Get DataScienceCluster default-dsc status [ocp_resources DataScienceCluster] 2026-06-12T09:52:47.854706Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:52:52.890447Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:52:57.933621Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:53:02.975943Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:53:08.018181Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:53:13.064469Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:53:18.107785Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:53:23.148611Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:53:28.204546Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:53:33.267233Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:53:38.308884Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:53:43.351788Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:53:48.393839Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:53:53.439799Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:53:58.482583Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:54:03.529069Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:54:08.562752Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:54:13.605007Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:54:18.647351Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:54:23.681703Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:54:28.718301Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:54:33.761234Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:54:38.804617Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-06-12T09:54:43.848745Z [error ] Cluster sanity check failed: 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': {'aipipelines': {'managementState': 'Removed'}, 'dashboard': {'managementState': 'Managed'}, 'feastoperator': {'managementState': 'Removed'}, 'kserve': {'managementState': 'Managed', 'releases': [{'name': 'KServe', 'repoUrl': 'https://github.com/kserve/kserve/', 'version': 'v0.17.0'}, {'name': 'vLLM', 'repoUrl': 'https://github.com/vllm-project/vllm', 'version': 'v0.18.0'}, {'name': 'llm-d-inference-scheduler', 'repoUrl': 'https://github.com/llm-d/llm-d-inference-scheduler', 'version': 'v0.7.1'}, {'name': 'llm-d-workload-variant-autoscaler', 'repoUrl': 'https://github.com/llm-d/llm-d-workload-variant-autoscaler', 'version': 'v0.6.0'}]}, 'kueue': {'managementState': 'Removed'}, 'llamastackoperator': {'managementState': 'Removed'}, 'mlflowoperator': {'managementState': 'Removed'}, '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'}]}, 'ray': {'managementState': 'Removed'}, 'sparkoperator': {'managementState': 'Removed'}, 'trainer': {'managementState': 'Removed'}, 'trainingoperator': {'managementState': 'Removed'}, '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'}]}, 'workbenches': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Notebook Controller', 'repoUrl': 'https://github.com/kubeflow/kubeflow', 'version': '1.10.0'}], 'workbenchNamespace': 'rhods-notebooks'}}, 'conditions': [{'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'failure deploying resource /default-kserve: apply failed ' 'components.platform.opendatahub.io/v1alpha1, Kind=Kserve: unable ' 'to patch components.platform.opendatahub.io/v1alpha1, Kind=Kserve ' 'default-kserve: Kserve.components.platform.opendatahub.io ' '"default-kserve" is invalid: [spec.modelsAsService: Invalid ' 'value: "null": spec.modelsAsService in body must be of type ' 'object: "null", : Invalid value: "null": some validation ' 'rules were not checked because the object was invalid; correct ' 'the existing errors to complete validation]', 'reason': 'Error', 'status': 'False', 'type': 'Ready'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'failure deploying resource /default-kserve: apply failed ' 'components.platform.opendatahub.io/v1alpha1, Kind=Kserve: unable ' 'to patch components.platform.opendatahub.io/v1alpha1, Kind=Kserve ' 'default-kserve: Kserve.components.platform.opendatahub.io ' '"default-kserve" is invalid: [spec.modelsAsService: Invalid ' 'value: "null": spec.modelsAsService in body must be of type ' 'object: "null", : Invalid value: "null": some validation ' 'rules were not checked because the object was invalid; correct ' 'the existing errors to complete validation]', 'observedGeneration': 3, 'reason': 'Error', 'status': 'False', 'type': 'ProvisioningSucceeded'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'ComponentsReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'AIPipelinesReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'DashboardReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'FeastOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceDependencies'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceWideEPDependencies'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'KserveReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'KueueReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'LlamaStackOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'MLflowOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'ModelControllerReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'ModelRegistryReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'ModelsAsServiceReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'RayReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'SparkOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'TrainerReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'TrainingOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'TrustyAIReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'WorkbenchesReady'}], 'observedGeneration': 1, 'phase': 'Not Ready', 'release': {'name': 'OpenShift AI Self-Managed', 'version': '3.4.1'}}. [utilities.infra] name=utilities.infra =============== 413 deselected, 3 warnings in 125.05s (0:02:05) ================ =============== 413 deselected, 3 warnings in 125.05s (0:02:05) ================ ! _pytest.outcomes.Exit: Cluster sanity check failed: 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': {'aipipelines': {'managementState': 'Removed'}, 'dashboard': {'managementState': 'Managed'}, 'feastoperator': {'managementState': 'Removed'}, 'kserve': {'managementState': 'Managed', 'releases': [{'name': 'KServe', 'repoUrl': 'https://github.com/kserve/kserve/', 'version': 'v0.17.0'}, {'name': 'vLLM', 'repoUrl': 'https://github.com/vllm-project/vllm', 'version': 'v0.18.0'}, {'name': 'llm-d-inference-scheduler', 'repoUrl': 'https://github.com/llm-d/llm-d-inference-scheduler', 'version': 'v0.7.1'}, {'name': 'llm-d-workload-variant-autoscaler', 'repoUrl': 'https://github.com/llm-d/llm-d-workload-variant-autoscaler', 'version': 'v0.6.0'}]}, 'kueue': {'managementState': 'Removed'}, 'llamastackoperator': {'managementState': 'Removed'}, 'mlflowoperator': {'managementState': 'Removed'}, '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'}]}, 'ray': {'managementState': 'Removed'}, 'sparkoperator': {'managementState': 'Removed'}, 'trainer': {'managementState': 'Removed'}, 'trainingoperator': {'managementState': 'Removed'}, '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'}]}, 'workbenches': {'managementState': 'Managed', 'releases': [{'name': 'Kubeflow Notebook Controller', 'repoUrl': 'https://github.com/kubeflow/kubeflow', 'version': '1.10.0'}], 'workbenchNamespace': 'rhods-notebooks'}}, 'conditions': [{'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'failure deploying resource /default-kserve: apply failed ' 'components.platform.opendatahub.io/v1alpha1, Kind=Kserve: unable ' 'to patch components.platform.opendatahub.io/v1alpha1, Kind=Kserve ' 'default-kserve: Kserve.components.platform.opendatahub.io ' '"default-kserve" is invalid: [spec.modelsAsService: Invalid ' 'value: "null": spec.modelsAsService in body must be of type ' 'object: "null", : Invalid value: "null": some validation ' 'rules were not checked because the object was invalid; correct ' 'the existing errors to complete validation]', 'reason': 'Error', 'status': 'False', 'type': 'Ready'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'failure deploying resource /default-kserve: apply failed ' 'components.platform.opendatahub.io/v1alpha1, Kind=Kserve: unable ' 'to patch components.platform.opendatahub.io/v1alpha1, Kind=Kserve ' 'default-kserve: Kserve.components.platform.opendatahub.io ' '"default-kserve" is invalid: [spec.modelsAsService: Invalid ' 'value: "null": spec.modelsAsService in body must be of type ' 'object: "null", : Invalid value: "null": some validation ' 'rules were not checked because the object was invalid; correct ' 'the existing errors to complete validation]', 'observedGeneration': 3, 'reason': 'Error', 'status': 'False', 'type': 'ProvisioningSucceeded'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'ComponentsReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'AIPipelinesReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'DashboardReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'FeastOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceDependencies'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'KserveLLMInferenceServiceWideEPDependencies'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'KserveReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'KueueReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'LlamaStackOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'MLflowOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'ModelControllerReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'ModelRegistryReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'ModelsAsServiceReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'RayReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'SparkOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'TrainerReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'message': 'Component ManagementState is set to Removed', 'reason': 'Removed', 'severity': 'Info', 'status': 'False', 'type': 'TrainingOperatorReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'TrustyAIReady'}, {'lastTransitionTime': '2026-06-12T09:54:38Z', 'status': 'True', 'type': 'WorkbenchesReady'}], 'observedGeneration': 1, 'phase': 'Not Ready', 'release': {'name': 'OpenShift AI Self-Managed', 'version': '3.4.1'}}. ! --- BVT pytest attempt 2026-06-12T09:54:52.825723+00:00 (python3 -m pytest...) --- ImportError while loading conftest '/home/odh/opendatahub-tests/conftest.py'. conftest.py:16: in from ocp_resources.cluster_service_version import ClusterServiceVersion E ModuleNotFoundError: No module named 'ocp_resources'