--- pytest attempt 2026-07-12T18:31:03.667312+00:00 (/.local/bin/uv --directory /home/odh/opendatahub-tests...) --- 2026-07-12T18:31:05.807801Z [info ] Writing tests log to /home/odh/opendatahub-tests/results/pytest-tests.log [conftest] 2026-07-12T18:31:05.810029Z [info ] Trying to get client via new_client_from_config [ocp_resources.resource] /workspace/tests-shared/tests-payload/.tools/python/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( /workspace/tests-shared/tests-payload/.tools/python/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( /workspace/tests-shared/tests-payload/.tools/python/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( /workspace/tests-shared/tests-payload/.tools/python/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( /workspace/tests-shared/tests-payload/.tools/python/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-12T18:31:05.970819Z [info ] kind: DataScienceCluster api version: datasciencecluster.opendatahub.io/v2 [ocp_resources.resource] /workspace/tests-shared/tests-payload/.tools/python/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( /workspace/tests-shared/tests-payload/.tools/python/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( /workspace/tests-shared/tests-payload/.tools/python/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( /workspace/tests-shared/tests-payload/.tools/python/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-12T18:31:06.058589Z [info ] kind: DSCInitialization api version: dscinitialization.opendatahub.io/v2 [ocp_resources.resource] /workspace/tests-shared/tests-payload/.tools/python/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 175 items / 167 deselected / 8 selected tests/model_serving/maas_billing/body_base_routing/pre_auth_model_header/test_bbr_envoy_filter.py::TestBBREnvoyFilter::test_bbr_envoy_filter_has_pre_and_post_auth_stages  ---------------------------------- test_bbr_envoy_filter_has_pre_and_post_auth_stages ---------------------------------- -------------------------------------------------------- SETUP -------------------------------------------------------- 2026-07-12T18:31:06.462542Z [info ] Executing session fixture: event_loop_policy [conftest] 2026-07-12T18:31:06.462705Z [info ] Executing session fixture: _syrupy_apply_ide_patches [conftest] 2026-07-12T18:31:06.462942Z [info ] Executing session fixture: admin_client [conftest] 2026-07-12T18:31:06.464929Z [info ] Trying to get client via new_client_from_config [ocp_resources.resource] 2026-07-12T18:31:06.466187Z [info ] Executing session fixture: dsc_resource [conftest] 2026-07-12T18:31:06.466328Z [info ] kind: DataScienceCluster api version: datasciencecluster.opendatahub.io/v2 [ocp_resources.resource] 2026-07-12T18:31:06.537586Z [info ] Executing session fixture: tmp_path_factory [conftest] 2026-07-12T18:31:06.537863Z [info ] Executing session fixture: tests_tmp_dir [conftest] 2026-07-12T18:31:06.538768Z [info ] Executing session fixture: os_path_environment [conftest] 2026-07-12T18:31:06.538966Z [info ] Executing session fixture: tmpdir_factory [conftest] 2026-07-12T18:31:06.539163Z [info ] Executing session fixture: bin_directory [conftest] 2026-07-12T18:31:06.539953Z [info ] Executing session fixture: oc_binary_path [conftest] 2026-07-12T18:31:06.577731Z [info ] kind: ConsoleCLIDownload api version: console.openshift.io/v1 [ocp_resources.resource] 2026-07-12T18:31:06.609389Z [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-12T18:31:06.609514Z [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-12T18:31:06.610453Z [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-12T18:31:07.070127Z [info ] Elapsed time: 5.412101745605469e-05 [0:00:00.000054] [timeout_sampler] 2026-07-12T18:31:07.944865Z [info ] Extract the downloaded archive. [utilities.infra] name=utilities.infra 2026-07-12T18:31:09.537782Z [info ] Downloaded file: ['oc']  [utilities.infra] name=utilities.infra 2026-07-12T18:31:09.566171Z [info ] Executing session fixture: bin_directory_to_os_path [conftest] 2026-07-12T18:31:09.563943Z [info ] OC binary path: /tmp/pytest-bhiAeT87a2BYF5oS44dRRe/bin0/oc [tests.conftest] name=tests.conftest 2026-07-12T18:31:09.564012Z [info ] Adding /tmp/pytest-bhiAeT87a2BYF5oS44dRRe/bin0 to $PATH [tests.conftest] name=tests.conftest 2026-07-12T18:31:09.566677Z [info ] Executing session fixture: nodes [conftest] 2026-07-12T18:31:10.673824Z [info ] Executing session fixture: dsci_resource [conftest] 2026-07-12T18:31:10.674088Z [info ] kind: DSCInitialization api version: dscinitialization.opendatahub.io/v2 [ocp_resources.resource] 2026-07-12T18:31:10.690910Z [info ] Executing session fixture: record_testsuite_property [conftest] 2026-07-12T18:31:10.691101Z [info ] Executing session fixture: junitxml_plugin [conftest] 2026-07-12T18:31:10.691279Z [info ] Executing session fixture: cluster_sanity_scope_session [conftest] 2026-07-12T18:31:10.690246Z [info ] Check cluster sanity.  [utilities.infra] name=utilities.infra 2026-07-12T18:31:10.691647Z [info ] Verify all nodes are in a healthy condition. [ocp_utilities.infra] 2026-07-12T18:31:10.739181Z [info ] Verify all nodes are schedulable. [ocp_utilities.infra] 2026-07-12T18:31:10.787864Z [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-12T18:31:10.787231Z [info ] Wait for DSCI default-dsci to be in Ready status. [utilities.infra] name=utilities.infra 2026-07-12T18:31:10.788219Z [info ] Get DSCInitialization default-dsci status [ocp_resources DSCInitialization] 2026-07-12T18:31:10.804457Z [info ] Elapsed time: 0.00011920928955078125 [0:00:00.000119] [timeout_sampler] 2026-07-12T18:31:10.804672Z [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-12T18:31:10.803919Z [info ] Wait for DSC default-dsc are Ready. [utilities.infra] name=utilities.infra 2026-07-12T18:31:10.804938Z [info ] Get DataScienceCluster default-dsc status [ocp_resources DataScienceCluster] 2026-07-12T18:31:10.823201Z [info ] Elapsed time: 4.1484832763671875e-05 [0:00:00.000041] [timeout_sampler] 2026-07-12T18:31:10.823465Z [info ] Executing session fixture: autouse_fixtures [conftest] 2026-07-12T18:31:10.823613Z [info ] Executing session fixture: maas_gateway_api_hostname [conftest] 2026-07-12T18:31:10.823745Z [info ] kind: Ingress api version: config.openshift.io/v1 [ocp_resources.resource] 2026-07-12T18:31:10.855276Z [info ] Executing session fixture: maas_gateway_api [conftest] 2026-07-12T18:31:10.903824Z [info ] kind: Gateway api version: gateway.networking.k8s.io/v1 [ocp_resources.resource] 2026-07-12T18:31:10.920730Z [info ] Reusing existing gateway openshift-ingress/maas-default-gateway [conftest] name=conftest 2026-07-12T18:31:10.921522Z [info ] Wait for Gateway/maas-default-gateway's 'Programmed' condition to be 'True' [ocp_resources Gateway] 2026-07-12T18:31:10.921671Z [info ] Wait until Gateway maas-default-gateway is created [ocp_resources Gateway] 2026-07-12T18:31:10.921818Z [info ] Waiting for 300 seconds [0:05:00], retry every 1 seconds. (Function: ocp_resources.resource.wait.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:10.938388Z [info ] Elapsed time: 3.528594970703125e-05 [0:00:00.000035] [timeout_sampler] 2026-07-12T18:31:10.938588Z [info ] Waiting for 299.9828691482544 seconds [0:04:59.982869], retry every 1 seconds. (Function: ocp_resources.resource.wait_for_condition.lambda: self.instance) [timeout_sampler] 2026-07-12T18:31:10.955223Z [info ] Elapsed time: 3.409385681152344e-05 [0:00:00.000034] [timeout_sampler] 2026-07-12T18:31:10.955399Z [info ] ResourceEdit: Backing up old data [ocp_resources.resource] 2026-07-12T18:31:10.973981Z [info ] ResourceEdits: Updating data for resource Gateway maas-default-gateway [ocp_resources.resource] 2026-07-12T18:31:10.974193Z [info ] Update Gateway maas-default-gateway: {'metadata': {'annotations': {'security.opendatahub.io/authorino-tls-bootstrap': 'true'}, 'name': 'maas-default-gateway'}} [ocp_resources Gateway] 2026-07-12T18:31:11.001053Z [info ] Executing session fixture: pytestconfig [conftest] 2026-07-12T18:31:11.001244Z [info ] Executing session fixture: use_unprivileged_client [conftest] 2026-07-12T18:31:11.001414Z [info ] Executing session fixture: kubconfig_filepath [conftest] 2026-07-12T18:31:11.002187Z [info ] Executing session fixture: cluster_authentication [conftest] 2026-07-12T18:31:11.002337Z [info ] kind: Authentication api version: config.openshift.io/v1 [ocp_resources.resource] 2026-07-12T18:31:11.018663Z [info ] Executing session fixture: is_byoidc [conftest] 2026-07-12T18:31:11.035525Z [info ] Executing session fixture: non_admin_user_password [conftest] 2026-07-12T18:31:11.066995Z [info ] Executing session fixture: unprivileged_client [conftest] 2026-07-12T18:31:11.067172Z [info ] Running oc whoami command  [pyhelper_utils.shell] 2026-07-12T18:31:11.195743Z [info ] Running Hide By User command  [pyhelper_utils.shell] 2026-07-12T18:31:12.172477Z [info ] Trying to get client via new_client_from_config [ocp_resources.resource] 2026-07-12T18:31:12.584731Z [info ] Executing session fixture: maas_subscription_namespace [conftest] 2026-07-12T18:31:12.600106Z [info ] Namespace models-as-a-service already exists, reusing it [conftest] name=conftest 2026-07-12T18:31:12.601684Z [info ] Executing session fixture: maas_subscription_controller_enabled_latest [conftest] 2026-07-12T18:31:12.601834Z [info ] ResourceEdit: Backing up old data [ocp_resources.resource] 2026-07-12T18:31:12.633345Z [info ] ResourceEdits: Updating data for resource DataScienceCluster default-dsc [ocp_resources.resource] 2026-07-12T18:31:12.633695Z [info ] Update DataScienceCluster default-dsc: {'spec': {'components': {'kserve': {'modelsAsService': {'managementState': 'Managed'}}}}, 'metadata': {'name': 'default-dsc'}} [ocp_resources DataScienceCluster] 2026-07-12T18:31:12.709657Z [info ] Wait for DataScienceCluster/default-dsc's 'ModelsAsServiceReady' condition to be 'True' [ocp_resources DataScienceCluster] 2026-07-12T18:31:12.709823Z [info ] Wait until DataScienceCluster default-dsc is created [ocp_resources DataScienceCluster] 2026-07-12T18:31:12.709987Z [info ] Waiting for 900 seconds [0:15:00], retry every 1 seconds. (Function: ocp_resources.resource.wait.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:12.728727Z [info ] Elapsed time: 5.269050598144531e-05 [0:00:00.000053] [timeout_sampler] 2026-07-12T18:31:12.728911Z [info ] Waiting for 899.9809184074402 seconds [0:14:59.980918], retry every 1 seconds. (Function: ocp_resources.resource.wait_for_condition.lambda: self.instance) [timeout_sampler] 2026-07-12T18:31:12.747357Z [info ] Elapsed time: 3.814697265625e-05 [0:00:00.000038] [timeout_sampler] 2026-07-12T18:31:12.747627Z [info ] Wait for DataScienceCluster/default-dsc's 'Ready' condition to be 'True' [ocp_resources DataScienceCluster] 2026-07-12T18:31:12.747771Z [info ] Wait until DataScienceCluster default-dsc is created [ocp_resources DataScienceCluster] 2026-07-12T18:31:12.747905Z [info ] Waiting for 600 seconds [0:10:00], retry every 1 seconds. (Function: ocp_resources.resource.wait.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:12.766090Z [info ] Elapsed time: 2.86102294921875e-05 [0:00:00.000029] [timeout_sampler] 2026-07-12T18:31:12.766270Z [info ] Waiting for 599.9812388420105 seconds [0:09:59.981239], retry every 1 seconds. (Function: ocp_resources.resource.wait_for_condition.lambda: self.instance) [timeout_sampler] 2026-07-12T18:31:12.785732Z [info ] Elapsed time: 3.147125244140625e-05 [0:00:00.000031] [timeout_sampler] 2026-07-12T18:31:12.785909Z [info ] Executing session fixture: bbr_gateway_namespace [conftest] 2026-07-12T18:31:12.802718Z [info ] Executing class fixture: bbr_envoy_filter_config_patches [conftest] 2026-07-12T18:31:12.859729Z [info ] kind: EnvoyFilter api version: networking.istio.io/v1alpha3 [ocp_resources.resource] PASSED _ 1 of 8 completed, 1 Pass, 0 Fail, 0 Skip, 0 XPass, 0 XFail, 0 Error, 0 ReRun _ tests/model_serving/maas_billing/body_base_routing/pre_auth_model_header/test_bbr_envoy_filter.py::TestBBREnvoyFilter::test_bbr_post_auth_processing_deployment_ready --------------------------------------------------------- CALL --------------------------------------------------------- 2026-07-12T18:31:12.895088Z [info ] EnvoyFilter 'openshift-ingress/payload-processing' has pre-auth and post-auth stages: ['envoy.filters.http.ext_proc.ipp-pre', 'envoy.filters.http.ext_proc.ipp'] [tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.utils] name=tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.utils  TEST: TestBBREnvoyFilter.test_bbr_envoy_filter_has_pre_and_post_auth_stages STATUS: PASSED ------------------------------------------------------- TEARDOWN -------------------------------------------------------  ------------------------------------ test_bbr_post_auth_processing_deployment_ready ------------------------------------ -------------------------------------------------------- SETUP -------------------------------------------------------- --------------------------------------------------------- CALL --------------------------------------------------------- 2026-07-12T18:31:12.902626Z [info ] kind: Deployment api version: apps/v1 [ocp_resources.resource] PASSED _ 2 of 8 completed, 2 Pass, 0 Fail, 0 Skip, 0 XPass, 0 XFail, 0 Error, 0 ReRun _ tests/model_serving/maas_billing/body_base_routing/pre_auth_model_header/test_bbr_setup.py::TestBBRSetup::test_bbr_pre_processing_deployment_ready 2026-07-12T18:31:12.964686Z [info ] Deployment 'openshift-ingress/payload-processing' is ready (1/1 replicas) [tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.utils] name=tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.utils  TEST: TestBBREnvoyFilter.test_bbr_post_auth_processing_deployment_ready STATUS: PASSED ------------------------------------------------------- TEARDOWN -------------------------------------------------------  --------------------------------------- test_bbr_pre_processing_deployment_ready --------------------------------------- -------------------------------------------------------- SETUP -------------------------------------------------------- --------------------------------------------------------- CALL --------------------------------------------------------- PASSED _ 3 of 8 completed, 3 Pass, 0 Fail, 0 Skip, 0 XPass, 0 XFail, 0 Error, 0 ReRun _ tests/model_serving/maas_billing/body_base_routing/pre_auth_model_header/test_bbr_setup.py::TestBBRSetup::test_bbr_pre_processing_service_exposes_port_9004 2026-07-12T18:31:13.030761Z [info ] Deployment 'openshift-ingress/payload-pre-processing' is ready (1/1 replicas) [tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.utils] name=tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.utils  TEST: TestBBRSetup.test_bbr_pre_processing_deployment_ready STATUS: PASSED ------------------------------------------------------- TEARDOWN -------------------------------------------------------  ---------------------------------- test_bbr_pre_processing_service_exposes_port_9004 ---------------------------------- -------------------------------------------------------- SETUP -------------------------------------------------------- --------------------------------------------------------- CALL --------------------------------------------------------- PASSED _ 4 of 8 completed, 4 Pass, 0 Fail, 0 Skip, 0 XPass, 0 XFail, 0 Error, 0 ReRun _ tests/model_serving/maas_billing/body_base_routing/pre_auth_model_header/test_bbr_setup.py::TestBBRSetup::test_bbr_pre_processing_destination_rule_exists 2026-07-12T18:31:13.064561Z [info ] Service 'openshift-ingress/payload-pre-processing' exposes gRPC port 9004 [tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.utils] name=tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.utils  TEST: TestBBRSetup.test_bbr_pre_processing_service_exposes_port_9004 STATUS: PASSED ------------------------------------------------------- TEARDOWN -------------------------------------------------------  ----------------------------------- test_bbr_pre_processing_destination_rule_exists ----------------------------------- -------------------------------------------------------- SETUP -------------------------------------------------------- --------------------------------------------------------- CALL --------------------------------------------------------- 2026-07-12T18:31:13.069351Z [info ] kind: DestinationRule api version: networking.istio.io/v1 [ocp_resources.resource] PASSED _ 5 of 8 completed, 5 Pass, 0 Fail, 0 Skip, 0 XPass, 0 XFail, 0 Error, 0 ReRun _ tests/model_serving/maas_billing/multitenancy/aitenant/test_tenant_setup.py::TestAITenantTenantSetup::test_aitenant_crd_exists 2026-07-12T18:31:13.081883Z [info ] DestinationRule 'openshift-ingress/payload-pre-processing' exists [tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.utils] name=tests.model_serving.maas_billing.body_base_routing.pre_auth_model_header.utils  TEST: TestBBRSetup.test_bbr_pre_processing_destination_rule_exists STATUS: PASSED ------------------------------------------------------- TEARDOWN -------------------------------------------------------  ----------------------------------------------- test_aitenant_crd_exists ----------------------------------------------- -------------------------------------------------------- SETUP -------------------------------------------------------- --------------------------------------------------------- CALL --------------------------------------------------------- 2026-07-12T18:31:13.085659Z [info ] kind: CustomResourceDefinition api version: apiextensions.k8s.io/v1 [ocp_resources.resource] PASSED2026-07-12T18:31:13.118248Z [info ] AITenant CRD 'aitenants.maas.opendatahub.io' exists [_pytest.compat] name=multitenancy.aitenant.test_tenant_setup  TEST: TestAITenantTenantSetup.test_aitenant_crd_exists STATUS: PASSED ------------------------------------------------------- TEARDOWN ------------------------------------------------------- _ 6 of 8 completed, 6 Pass, 0 Fail, 0 Skip, 0 XPass, 0 XFail, 0 Error, 0 ReRun _ tests/model_serving/maas_billing/multitenancy/aitenant/test_tenant_setup.py::TestAITenantTenantSetup::test_aitenant_bootstrap_creates_tenant_environment  ---------------------------------- test_aitenant_bootstrap_creates_tenant_environment ---------------------------------- -------------------------------------------------------- SETUP -------------------------------------------------------- 2026-07-12T18:31:13.120803Z [info ] Executing session fixture: aitenant_infra_namespace [conftest] 2026-07-12T18:31:13.137028Z [info ] Executing session fixture: teardown_resources [conftest] 2026-07-12T18:31:13.137169Z [info ] Executing function fixture: aitenant_test_params [conftest] 2026-07-12T18:31:13.137305Z [info ] Executing function fixture: aitenant_bootstrap_gateway [conftest] 2026-07-12T18:31:13.137463Z [info ] kind: Gateway api version: gateway.networking.k8s.io/v1 [ocp_resources.resource] 2026-07-12T18:31:13.137611Z [info ] Create Gateway e2e-aigw-96b53a7f [ocp_resources Gateway] 2026-07-12T18:31:13.137748Z [info ] Posting {'apiVersion': 'gateway.networking.k8s.io/v1', 'kind': 'Gateway', 'metadata': {'name': 'e2e-aigw-96b53a7f', 'namespace': 'openshift-ingress'}, 'spec': {'gatewayClassName': 'openshift-default', 'listeners': [{'name': 'http', 'port': 80, 'protocol': 'HTTP'}]}} [ocp_resources Gateway] 2026-07-12T18:31:13.175102Z [info ] Executing function fixture: aitenant [conftest] 2026-07-12T18:31:13.212173Z [info ] kind: AITenant api version: maas.opendatahub.io/v1alpha1 [ocp_resources.resource] 2026-07-12T18:31:13.212447Z [info ] Create AITenant e2e-aigw-96b53a7f [ocp_resources AITenant] 2026-07-12T18:31:13.212608Z [info ] Posting {'apiVersion': 'maas.opendatahub.io/v1alpha1', 'kind': 'AITenant', 'metadata': {'name': 'e2e-aigw-96b53a7f', 'namespace': 'ai-tenants'}, 'spec': {'gateway': {'name': 'e2e-aigw-96b53a7f'}}} [ocp_resources AITenant] 2026-07-12T18:31:13.273370Z [info ] Wait until AITenant e2e-aigw-96b53a7f is created [ocp_resources AITenant] 2026-07-12T18:31:13.385794Z [info ] Waiting for 240 seconds [0:04:00], retry every 1 seconds. (Function: ocp_resources.resource.wait.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:13.386059Z [info ] Elapsed time: 5.125999450683594e-05 [0:00:00.000051] [timeout_sampler] 2026-07-12T18:31:13.386251Z [info ] Executing function fixture: ready_aitenant [conftest] 2026-07-12T18:31:13.441038Z [info ] Wait for AITenant/e2e-aigw-96b53a7f's 'Ready' condition to be 'True' [ocp_resources AITenant] 2026-07-12T18:31:13.441229Z [info ] Wait until AITenant e2e-aigw-96b53a7f is created [ocp_resources AITenant] 2026-07-12T18:31:13.441490Z [info ] Waiting for 300 seconds [0:05:00], retry every 1 seconds. (Function: ocp_resources.resource.wait.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:13.462881Z [info ] Elapsed time: 0.00016260147094726562 [0:00:00.000163] [timeout_sampler] 2026-07-12T18:31:13.463060Z [info ] Waiting for 299.9780161380768 seconds [0:04:59.978016], retry every 1 seconds. (Function: ocp_resources.resource.wait_for_condition.lambda: self.instance) [timeout_sampler] 2026-07-12T18:31:14.515223Z [info ] Elapsed time: 1.0340251922607422 [0:00:01.034025] [timeout_sampler] 2026-07-12T18:31:14.531361Z [info ] Executing function fixture: aitenant_for_test [conftest] --------------------------------------------------------- CALL --------------------------------------------------------- 2026-07-12T18:31:14.565094Z [info ] Wait for AITenant/e2e-aigw-96b53a7f's 'Ready' condition to be 'True' [ocp_resources AITenant] 2026-07-12T18:31:14.565294Z [info ] Wait until AITenant e2e-aigw-96b53a7f is created [ocp_resources AITenant] 2026-07-12T18:31:14.565517Z [info ] Waiting for 300 seconds [0:05:00], retry every 1 seconds. (Function: ocp_resources.resource.wait.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:14.580612Z [info ] Elapsed time: 7.62939453125e-05 [0:00:00.000076] [timeout_sampler] 2026-07-12T18:31:14.580804Z [info ] Waiting for 299.984379529953 seconds [0:04:59.984380], retry every 1 seconds. (Function: ocp_resources.resource.wait_for_condition.lambda: self.instance) [timeout_sampler] 2026-07-12T18:31:14.597136Z [info ] Elapsed time: 4.0531158447265625e-05 [0:00:00.000041] [timeout_sampler] 2026-07-12T18:31:14.699294Z [info ] kind: Gateway api version: gateway.networking.k8s.io/v1 --- [DuplicateFilter: Last log `kind: AITenant api version: maas.opendatahub.io/v1alpha1` repeated 2 times] [ocp_resources.resource] 2026-07-12T18:31:14.783312Z [info ] Wait for Gateway/e2e-aigw-96b53a7f's 'Programmed' condition to be 'True' [ocp_resources Gateway] 2026-07-12T18:31:14.783529Z [info ] Wait until Gateway e2e-aigw-96b53a7f is created [ocp_resources Gateway] 2026-07-12T18:31:14.783683Z [info ] Waiting for 300 seconds [0:05:00], retry every 1 seconds. (Function: ocp_resources.resource.wait.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:14.804110Z [info ] Elapsed time: 3.647804260253906e-05 [0:00:00.000036] [timeout_sampler] 2026-07-12T18:31:14.804354Z [info ] Waiting for 299.97909569740295 seconds [0:04:59.979096], retry every 1 seconds. (Function: ocp_resources.resource.wait_for_condition.lambda: self.instance) [timeout_sampler] 2026-07-12T18:31:16.858032Z [info ] Elapsed time: 2.034803628921509 [0:00:02.034804] [timeout_sampler] 2026-07-12T18:31:16.858208Z [info ] kind: Tenant api version: maas.opendatahub.io/v1alpha1 [ocp_resources.resource] FAILED TEST: TestAITenantTenantSetup.test_aitenant_bootstrap_creates_tenant_environment STATUS: FAILED 2026-07-12T18:31:16.931797Z [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/model_serving/maas_billing/multitenancy/aitenant/test_tenant_setup.py", line 41, in test_aitenant_bootstrap_creates_tenant_environment verify_aitenant_bootstrap_children( ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ admin_client=admin_client, ^^^^^^^^^^^^^^^^^^^^^^^^^^ test_context=aitenant_for_test, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/home/odh/opendatahub-tests/tests/model_serving/maas_billing/multitenancy/aitenant/utils.py", line 323, in verify_aitenant_bootstrap_children assert tenant_gateway_ref.name == MAAS_GATEWAY_NAME, ( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AssertionError: Tenant gatewayRef.name expected 'maas-default-gateway', got 'e2e-aigw-96b53a7f' [conftest] ------------------------------------------------------- TEARDOWN ------------------------------------------------------- 2026-07-12T18:31:16.932118Z [info ] Delete AITenant e2e-aigw-96b53a7f [ocp_resources AITenant] 2026-07-12T18:31:16.966258Z [info ] Deleting {'apiVersion': 'maas.opendatahub.io/v1alpha1', 'kind': 'AITenant', 'metadata': {'creationTimestamp': '2026-07-12T18:31:13Z', 'finalizers': ['maas.opendatahub.io/aitenant-cleanup'], 'generation': 1, 'managedFields': [{'apiVersion': 'maas.opendatahub.io/v1alpha1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:spec': {'.': {}, 'f:gateway': {'.': {}, 'f:name': {}}}}, 'manager': 'OpenAPI-Generator', 'operation': 'Update', 'time': '2026-07-12T18:31:13Z'}, {'apiVersion': 'maas.opendatahub.io/v1alpha1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:metadata': {'f:finalizers': {'.': {}, 'v:"maas.opendatahub.io/aitenant-cleanup"': {}}}}, 'manager': 'manager', 'operation': 'Update', 'time': '2026-07-12T18:31:13Z'}, {'apiVersion': 'maas.opendatahub.io/v1alpha1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:status': {'.': {}, 'f:conditions': {}, 'f:gatewayRef': {'.': {}, 'f:name': {}, 'f:namespace': {}}, 'f:phase': {}, 'f:tenantNamespace': {}}}, 'manager': 'manager', 'operation': 'Update', 'subresource': 'status', 'time': '2026-07-12T18:31:13Z'}], 'name': 'e2e-aigw-96b53a7f', 'namespace': 'ai-tenants', 'resourceVersion': '212817385', 'uid': '00780afa-6951-4abb-9118-9a20f1caeff0'}, 'spec': {'gateway': {'name': 'e2e-aigw-96b53a7f'}}, 'status': {'conditions': [{'lastTransitionTime': '2026-07-12T18:31:13Z', 'message': 'AITenant bootstrap resources are reconciled', 'observedGeneration': 1, 'reason': 'Reconciled', 'status': 'True', 'type': 'Ready'}], 'gatewayRef': {'name': 'e2e-aigw-96b53a7f', 'namespace': 'openshift-ingress'}, 'phase': 'Active', 'tenantNamespace': 'ai-tenant-e2e-aigw-96b53a7f'}} [ocp_resources AITenant] 2026-07-12T18:31:16.988514Z [info ] Wait until AITenant e2e-aigw-96b53a7f is deleted [ocp_resources AITenant] 2026-07-12T18:31:16.988639Z [info ] Waiting for 240 seconds [0:04:00], retry every 1 seconds. (Function: ocp_resources.resource.wait_deleted.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:18.024517Z [info ] Elapsed time: 1.0179283618927002 [0:00:01.017928] [timeout_sampler] 2026-07-12T18:31:18.024699Z [info ] Delete Gateway e2e-aigw-96b53a7f [ocp_resources Gateway] 2026-07-12T18:31:18.065307Z [info ] Deleting {'apiVersion': 'gateway.networking.k8s.io/v1', 'kind': 'Gateway', 'metadata': {'creationTimestamp': '2026-07-12T18:31:13Z', 'generation': 1, 'labels': {'istio.io/rev': 'openshift-gateway'}, 'managedFields': [{'apiVersion': 'gateway.networking.k8s.io/v1beta1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:metadata': {'f:annotations': {'f:gateway.istio.io/controller-version': {}}}}, 'manager': 'openshift.io/gateway-controller/v1', 'operation': 'Apply', 'subresource': 'status', 'time': '2026-07-12T18:31:13Z'}, {'apiVersion': 'gateway.networking.k8s.io/v1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:spec': {}}, 'manager': 'OpenAPI-Generator', 'operation': 'Update', 'time': '2026-07-12T18:31:13Z'}, {'apiVersion': 'gateway.networking.k8s.io/v1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:metadata': {'f:labels': {'.': {}, 'f:istio.io/rev': {}}}}, 'manager': 'ingress-operator', 'operation': 'Update', 'time': '2026-07-12T18:31:13Z'}, {'apiVersion': 'gateway.networking.k8s.io/v1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:status': {'f:conditions': {'k:{"type":"kuadrant.io/TokenRateLimitPolicyAffected"}': {'.': {}, 'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}, 'f:type': {}}}, 'f:listeners': {'k:{"name":"http"}': {'f:conditions': {'k:{"type":"kuadrant.io/TokenRateLimitPolicyAffected"}': {'.': {}, 'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}, 'f:type': {}}}}}}}, 'manager': 'manager', 'operation': 'Update', 'subresource': 'status', 'time': '2026-07-12T18:31:14Z'}, {'apiVersion': 'gateway.networking.k8s.io/v1beta1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:status': {'f:addresses': {}, 'f:conditions': {'k:{"type":"Accepted"}': {'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}}, 'k:{"type":"Programmed"}': {'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}}}, 'f:listeners': {'.': {}, 'k:{"name":"http"}': {'.': {}, 'f:attachedRoutes': {}, 'f:conditions': {'.': {}, 'k:{"type":"Accepted"}': {'.': {}, 'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}, 'f:type': {}}, 'k:{"type":"Conflicted"}': {'.': {}, 'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}, 'f:type': {}}, 'k:{"type":"Programmed"}': {'.': {}, 'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}, 'f:type': {}}, 'k:{"type":"ResolvedRefs"}': {'.': {}, 'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}, 'f:type': {}}}, 'f:name': {}, 'f:supportedKinds': {}}}}}, 'manager': 'pilot-discovery', 'operation': 'Update', 'subresource': 'status', 'time': '2026-07-12T18:31:16Z'}], 'name': 'e2e-aigw-96b53a7f', 'namespace': 'openshift-ingress', 'resourceVersion': '212817522', 'uid': '045db24c-cfea-400a-8ac1-cce4a7f4e2a2'}, 'spec': {'gatewayClassName': 'openshift-default', 'listeners': [{'allowedRoutes': {'namespaces': {'from': 'Same'}}, 'name': 'http', 'port': 80, 'protocol': 'HTTP'}]}, 'status': {'addresses': [{'type': 'Hostname', 'value': 'a7df14875068e464a85ac46a56b0988f-2116087040.us-east-2.elb.amazonaws.com'}], 'conditions': [{'lastTransitionTime': '2026-07-12T18:31:13Z', 'message': 'Resource accepted', 'observedGeneration': 1, 'reason': 'Accepted', 'status': 'True', 'type': 'Accepted'}, {'lastTransitionTime': '2026-07-12T18:31:16Z', 'message': 'Resource programmed, assigned to service(s) e2e-aigw-96b53a7f-openshift-default.openshift-ingress.svc.cluster.local:80', 'observedGeneration': 1, 'reason': 'Programmed', 'status': 'True', 'type': 'Programmed'}, {'lastTransitionTime': '2026-07-12T18:31:14Z', 'message': 'Object affected by TokenRateLimitPolicy [openshift-ingress/gateway-default-deny-e2e-aigw-96b53a7f]', 'observedGeneration': 1, 'reason': 'Accepted', 'status': 'True', 'type': 'kuadrant.io/TokenRateLimitPolicyAffected'}], 'listeners': [{'attachedRoutes': 0, 'conditions': [{'lastTransitionTime': '2026-07-12T18:31:13Z', 'message': 'No errors found', 'observedGeneration': 1, 'reason': 'Accepted', 'status': 'True', 'type': 'Accepted'}, {'lastTransitionTime': '2026-07-12T18:31:13Z', 'message': 'No errors found', 'observedGeneration': 1, 'reason': 'NoConflicts', 'status': 'False', 'type': 'Conflicted'}, {'lastTransitionTime': '2026-07-12T18:31:13Z', 'message': 'No errors found', 'observedGeneration': 1, 'reason': 'Programmed', 'status': 'True', 'type': 'Programmed'}, {'lastTransitionTime': '2026-07-12T18:31:13Z', 'message': 'No errors found', 'observedGeneration': 1, 'reason': 'ResolvedRefs', 'status': 'True', 'type': 'ResolvedRefs'}, {'lastTransitionTime': '2026-07-12T18:31:14Z', 'message': 'Object affected by TokenRateLimitPolicy [openshift-ingress/gateway-default-deny-e2e-aigw-96b53a7f]', 'observedGeneration': 1, 'reason': 'Accepted', 'status': 'True', 'type': 'kuadrant.io/TokenRateLimitPolicyAffected'}], 'name': 'http', 'supportedKinds': [{'group': 'gateway.networking.k8s.io', 'kind': 'HTTPRoute'}, {'group': 'gateway.networking.k8s.io', 'kind': 'GRPCRoute'}]}]}} [ocp_resources Gateway] 2026-07-12T18:31:18.087574Z [info ] Wait until Gateway e2e-aigw-96b53a7f is deleted [ocp_resources Gateway] 2026-07-12T18:31:18.087733Z [info ] Waiting for 240 seconds [0:04:00], retry every 1 seconds. (Function: ocp_resources.resource.wait_deleted.lambda: self.exists) [timeout_sampler] __ TestAITenantTenantSetup.test_aitenant_bootstrap_creates_tenant_environment __ 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/model_serving/maas_billing/multitenancy/aitenant/test_tenant_setup.py", line 41, in test_aitenant_bootstrap_creates_tenant_environment verify_aitenant_bootstrap_children( ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ admin_client=admin_client, ^^^^^^^^^^^^^^^^^^^^^^^^^^ test_context=aitenant_for_test, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/home/odh/opendatahub-tests/tests/model_serving/maas_billing/multitenancy/aitenant/utils.py", line 323, in verify_aitenant_bootstrap_children assert tenant_gateway_ref.name == MAAS_GATEWAY_NAME, ( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AssertionError: Tenant gatewayRef.name expected 'maas-default-gateway', got 'e2e-aigw-96b53a7f' _ 7 of 8 completed, 6 Pass, 1 Fail, 0 Skip, 0 XPass, 0 XFail, 0 Error, 0 ReRun _ tests/model_serving/maas_billing/multitenancy/aitenant/test_tenant_setup.py::TestAITenantTenantSetup::test_aitenant_bootstrap_does_not_break_default_tenant 2026-07-12T18:31:18.107858Z [info ] Elapsed time: 4.601478576660156e-05 [0:00:00.000046] [timeout_sampler]  -------------------------------- test_aitenant_bootstrap_does_not_break_default_tenant -------------------------------- -------------------------------------------------------- SETUP -------------------------------------------------------- 2026-07-12T18:31:18.108387Z [info ] Executing function fixture: aitenant_test_params [conftest] 2026-07-12T18:31:18.108552Z [info ] Executing function fixture: aitenant_bootstrap_gateway [conftest] 2026-07-12T18:31:18.108680Z [info ] kind: Gateway api version: gateway.networking.k8s.io/v1 [ocp_resources.resource] 2026-07-12T18:31:18.108787Z [info ] Create Gateway e2e-aigw-a358edf2 [ocp_resources Gateway] 2026-07-12T18:31:18.108890Z [info ] Posting {'apiVersion': 'gateway.networking.k8s.io/v1', 'kind': 'Gateway', 'metadata': {'name': 'e2e-aigw-a358edf2', 'namespace': 'openshift-ingress'}, 'spec': {'gatewayClassName': 'openshift-default', 'listeners': [{'name': 'http', 'port': 80, 'protocol': 'HTTP'}]}} [ocp_resources Gateway] 2026-07-12T18:31:18.147713Z [info ] Executing function fixture: aitenant [conftest] 2026-07-12T18:31:18.147836Z [info ] kind: AITenant api version: maas.opendatahub.io/v1alpha1 [ocp_resources.resource] 2026-07-12T18:31:18.147953Z [info ] Create AITenant e2e-aigw-a358edf2 [ocp_resources AITenant] 2026-07-12T18:31:18.148067Z [info ] Posting {'apiVersion': 'maas.opendatahub.io/v1alpha1', 'kind': 'AITenant', 'metadata': {'name': 'e2e-aigw-a358edf2', 'namespace': 'ai-tenants'}, 'spec': {'gateway': {'name': 'e2e-aigw-a358edf2'}}} [ocp_resources AITenant] 2026-07-12T18:31:18.188802Z [info ] Wait until AITenant e2e-aigw-a358edf2 is created [ocp_resources AITenant] 2026-07-12T18:31:18.188958Z [info ] Waiting for 240 seconds [0:04:00], retry every 1 seconds. (Function: ocp_resources.resource.wait.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:18.209007Z [info ] Elapsed time: 6.842613220214844e-05 [0:00:00.000068] [timeout_sampler] 2026-07-12T18:31:18.209155Z [info ] Executing function fixture: ready_aitenant [conftest] 2026-07-12T18:31:18.253169Z [info ] Wait for AITenant/e2e-aigw-a358edf2's 'Ready' condition to be 'True' [ocp_resources AITenant] 2026-07-12T18:31:18.253321Z [info ] Wait until AITenant e2e-aigw-a358edf2 is created [ocp_resources AITenant] 2026-07-12T18:31:18.253564Z [info ] Waiting for 300 seconds [0:05:00], retry every 1 seconds. (Function: ocp_resources.resource.wait.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:18.285240Z [info ] Elapsed time: 5.364418029785156e-05 [0:00:00.000054] [timeout_sampler] 2026-07-12T18:31:18.285392Z [info ] Waiting for 299.9678246974945 seconds [0:04:59.967825], retry every 1 seconds. (Function: ocp_resources.resource.wait_for_condition.lambda: self.instance) [timeout_sampler] 2026-07-12T18:31:19.326010Z [info ] Elapsed time: 1.0228211879730225 [0:00:01.022821] [timeout_sampler] 2026-07-12T18:31:19.344038Z [info ] Executing function fixture: aitenant_for_test [conftest] --------------------------------------------------------- CALL --------------------------------------------------------- 2026-07-12T18:31:19.380614Z [info ] Wait for AITenant/e2e-aigw-a358edf2's 'Ready' condition to be 'True' [ocp_resources AITenant] 2026-07-12T18:31:19.380766Z [info ] Wait until AITenant e2e-aigw-a358edf2 is created [ocp_resources AITenant] 2026-07-12T18:31:19.380886Z [info ] Waiting for 300 seconds [0:05:00], retry every 1 seconds. (Function: ocp_resources.resource.wait.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:19.397185Z [info ] Elapsed time: 4.2438507080078125e-05 [0:00:00.000042] [timeout_sampler] 2026-07-12T18:31:19.397337Z [info ] Waiting for 299.98329424858093 seconds [0:04:59.983294], retry every 1 seconds. (Function: ocp_resources.resource.wait_for_condition.lambda: self.instance) [timeout_sampler] 2026-07-12T18:31:19.415071Z [info ] Elapsed time: 3.1948089599609375e-05 [0:00:00.000032] [timeout_sampler] 2026-07-12T18:31:19.440285Z [info ] kind: Tenant api version: maas.opendatahub.io/v1alpha1 [ocp_resources.resource] 2026-07-12T18:31:19.462912Z [info ] Wait for Tenant/default-tenant's 'Ready' condition to be 'True' [ocp_resources Tenant] 2026-07-12T18:31:19.463069Z [info ] Wait until Tenant default-tenant is created [ocp_resources Tenant] 2026-07-12T18:31:19.463286Z [info ] Waiting for 300 seconds [0:05:00], retry every 1 seconds. (Function: ocp_resources.resource.wait.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:19.479886Z [info ] Elapsed time: 7.295608520507812e-05 [0:00:00.000073] [timeout_sampler] 2026-07-12T18:31:19.480043Z [info ] Waiting for 299.98291206359863 seconds [0:04:59.982912], retry every 1 seconds. (Function: ocp_resources.resource.wait_for_condition.lambda: self.instance) [timeout_sampler] PASSED2026-07-12T18:31:19.503811Z [info ] Elapsed time: 3.266334533691406e-05 [0:00:00.000033] [timeout_sampler] 2026-07-12T18:31:19.502939Z [info ] Regression check passed: Tenant/default-tenant in 'models-as-a-service' is still Ready [tests.model_serving.maas_billing.multitenancy.aitenant.utils] name=tests.model_serving.maas_billing.multitenancy.aitenant.utils  TEST: TestAITenantTenantSetup.test_aitenant_bootstrap_does_not_break_default_tenant STATUS: PASSED ------------------------------------------------------- TEARDOWN ------------------------------------------------------- 2026-07-12T18:31:19.504841Z [info ] Delete AITenant e2e-aigw-a358edf2 [ocp_resources AITenant] 2026-07-12T18:31:19.539220Z [info ] Deleting {'apiVersion': 'maas.opendatahub.io/v1alpha1', 'kind': 'AITenant', 'metadata': {'creationTimestamp': '2026-07-12T18:31:18Z', 'finalizers': ['maas.opendatahub.io/aitenant-cleanup'], 'generation': 1, 'managedFields': [{'apiVersion': 'maas.opendatahub.io/v1alpha1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:spec': {'.': {}, 'f:gateway': {'.': {}, 'f:name': {}}}}, 'manager': 'OpenAPI-Generator', 'operation': 'Update', 'time': '2026-07-12T18:31:18Z'}, {'apiVersion': 'maas.opendatahub.io/v1alpha1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:metadata': {'f:finalizers': {'.': {}, 'v:"maas.opendatahub.io/aitenant-cleanup"': {}}}}, 'manager': 'manager', 'operation': 'Update', 'time': '2026-07-12T18:31:18Z'}, {'apiVersion': 'maas.opendatahub.io/v1alpha1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:status': {'.': {}, 'f:conditions': {}, 'f:gatewayRef': {'.': {}, 'f:name': {}, 'f:namespace': {}}, 'f:phase': {}, 'f:tenantNamespace': {}}}, 'manager': 'manager', 'operation': 'Update', 'subresource': 'status', 'time': '2026-07-12T18:31:18Z'}], 'name': 'e2e-aigw-a358edf2', 'namespace': 'ai-tenants', 'resourceVersion': '212817721', 'uid': '8a0128fd-12be-43cd-9fc2-754f753529b8'}, 'spec': {'gateway': {'name': 'e2e-aigw-a358edf2'}}, 'status': {'conditions': [{'lastTransitionTime': '2026-07-12T18:31:18Z', 'message': 'AITenant bootstrap resources are reconciled', 'observedGeneration': 1, 'reason': 'Reconciled', 'status': 'True', 'type': 'Ready'}], 'gatewayRef': {'name': 'e2e-aigw-a358edf2', 'namespace': 'openshift-ingress'}, 'phase': 'Active', 'tenantNamespace': 'ai-tenant-e2e-aigw-a358edf2'}} [ocp_resources AITenant] 2026-07-12T18:31:19.560888Z [info ] Wait until AITenant e2e-aigw-a358edf2 is deleted [ocp_resources AITenant] 2026-07-12T18:31:19.561041Z [info ] Waiting for 240 seconds [0:04:00], retry every 1 seconds. (Function: ocp_resources.resource.wait_deleted.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:20.596897Z [info ] Elapsed time: 1.018263339996338 [0:00:01.018263] [timeout_sampler] 2026-07-12T18:31:20.597071Z [info ] Delete Gateway e2e-aigw-a358edf2 [ocp_resources Gateway] 2026-07-12T18:31:20.639457Z [info ] Deleting {'apiVersion': 'gateway.networking.k8s.io/v1', 'kind': 'Gateway', 'metadata': {'creationTimestamp': '2026-07-12T18:31:18Z', 'generation': 1, 'labels': {'istio.io/rev': 'openshift-gateway'}, 'managedFields': [{'apiVersion': 'gateway.networking.k8s.io/v1beta1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:metadata': {'f:annotations': {'f:gateway.istio.io/controller-version': {}}}}, 'manager': 'openshift.io/gateway-controller/v1', 'operation': 'Apply', 'subresource': 'status', 'time': '2026-07-12T18:31:18Z'}, {'apiVersion': 'gateway.networking.k8s.io/v1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:spec': {}}, 'manager': 'OpenAPI-Generator', 'operation': 'Update', 'time': '2026-07-12T18:31:18Z'}, {'apiVersion': 'gateway.networking.k8s.io/v1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:metadata': {'f:labels': {'.': {}, 'f:istio.io/rev': {}}}}, 'manager': 'ingress-operator', 'operation': 'Update', 'time': '2026-07-12T18:31:18Z'}, {'apiVersion': 'gateway.networking.k8s.io/v1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:status': {'f:conditions': {'k:{"type":"kuadrant.io/TokenRateLimitPolicyAffected"}': {'.': {}, 'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}, 'f:type': {}}}, 'f:listeners': {'k:{"name":"http"}': {'f:conditions': {'k:{"type":"kuadrant.io/TokenRateLimitPolicyAffected"}': {'.': {}, 'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}, 'f:type': {}}}}}}}, 'manager': 'manager', 'operation': 'Update', 'subresource': 'status', 'time': '2026-07-12T18:31:19Z'}, {'apiVersion': 'gateway.networking.k8s.io/v1beta1', 'fieldsType': 'FieldsV1', 'fieldsV1': {'f:status': {'f:conditions': {'k:{"type":"Accepted"}': {'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}}, 'k:{"type":"Programmed"}': {'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}}}, 'f:listeners': {'.': {}, 'k:{"name":"http"}': {'.': {}, 'f:attachedRoutes': {}, 'f:conditions': {'.': {}, 'k:{"type":"Accepted"}': {'.': {}, 'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}, 'f:type': {}}, 'k:{"type":"Conflicted"}': {'.': {}, 'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}, 'f:type': {}}, 'k:{"type":"Programmed"}': {'.': {}, 'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}, 'f:type': {}}, 'k:{"type":"ResolvedRefs"}': {'.': {}, 'f:lastTransitionTime': {}, 'f:message': {}, 'f:observedGeneration': {}, 'f:reason': {}, 'f:status': {}, 'f:type': {}}}, 'f:name': {}, 'f:supportedKinds': {}}}}}, 'manager': 'pilot-discovery', 'operation': 'Update', 'subresource': 'status', 'time': '2026-07-12T18:31:20Z'}], 'name': 'e2e-aigw-a358edf2', 'namespace': 'openshift-ingress', 'resourceVersion': '212817877', 'uid': '4aed126c-3501-4e72-abbb-04dcff0d7fea'}, 'spec': {'gatewayClassName': 'openshift-default', 'listeners': [{'allowedRoutes': {'namespaces': {'from': 'Same'}}, 'name': 'http', 'port': 80, 'protocol': 'HTTP'}]}, 'status': {'conditions': [{'lastTransitionTime': '2026-07-12T18:31:18Z', 'message': 'Resource accepted', 'observedGeneration': 1, 'reason': 'Accepted', 'status': 'True', 'type': 'Accepted'}, {'lastTransitionTime': '2026-07-12T18:31:18Z', 'message': 'Assigned to service(s) e2e-aigw-a358edf2-openshift-default.openshift-ingress.svc.cluster.local:80, but failed to assign to all requested addresses: address pending for hostname "e2e-aigw-a358edf2-openshift-default.openshift-ingress.svc.cluster.local"', 'observedGeneration': 1, 'reason': 'AddressNotAssigned', 'status': 'False', 'type': 'Programmed'}, {'lastTransitionTime': '2026-07-12T18:31:19Z', 'message': 'Object affected by TokenRateLimitPolicy [openshift-ingress/gateway-default-deny-e2e-aigw-a358edf2]', 'observedGeneration': 1, 'reason': 'Accepted', 'status': 'True', 'type': 'kuadrant.io/TokenRateLimitPolicyAffected'}], 'listeners': [{'attachedRoutes': 0, 'conditions': [{'lastTransitionTime': '2026-07-12T18:31:18Z', 'message': 'No errors found', 'observedGeneration': 1, 'reason': 'Accepted', 'status': 'True', 'type': 'Accepted'}, {'lastTransitionTime': '2026-07-12T18:31:18Z', 'message': 'No errors found', 'observedGeneration': 1, 'reason': 'NoConflicts', 'status': 'False', 'type': 'Conflicted'}, {'lastTransitionTime': '2026-07-12T18:31:18Z', 'message': 'No errors found', 'observedGeneration': 1, 'reason': 'Programmed', 'status': 'True', 'type': 'Programmed'}, {'lastTransitionTime': '2026-07-12T18:31:18Z', 'message': 'No errors found', 'observedGeneration': 1, 'reason': 'ResolvedRefs', 'status': 'True', 'type': 'ResolvedRefs'}, {'lastTransitionTime': '2026-07-12T18:31:19Z', 'message': 'Object affected by TokenRateLimitPolicy [openshift-ingress/gateway-default-deny-e2e-aigw-a358edf2]', 'observedGeneration': 1, 'reason': 'Accepted', 'status': 'True', 'type': 'kuadrant.io/TokenRateLimitPolicyAffected'}], 'name': 'http', 'supportedKinds': [{'group': 'gateway.networking.k8s.io', 'kind': 'HTTPRoute'}, {'group': 'gateway.networking.k8s.io', 'kind': 'GRPCRoute'}]}]}} [ocp_resources Gateway] 2026-07-12T18:31:20.663017Z [info ] Wait until Gateway e2e-aigw-a358edf2 is deleted [ocp_resources Gateway] 2026-07-12T18:31:20.663173Z [info ] Waiting for 240 seconds [0:04:00], retry every 1 seconds. (Function: ocp_resources.resource.wait_deleted.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:20.680245Z [info ] Elapsed time: 8.225440979003906e-05 [0:00:00.000082] [timeout_sampler] 2026-07-12T18:31:20.680521Z [info ] ResourceEdits: Restoring data for resource DataScienceCluster default-dsc [ocp_resources.resource] 2026-07-12T18:31:20.680698Z [info ] Update DataScienceCluster default-dsc: {'spec': {'components': {'kserve': {'modelsAsService': {}}}}, 'metadata': {'name': 'default-dsc'}} [ocp_resources DataScienceCluster] 2026-07-12T18:31:20.758171Z [info ] Wait for DataScienceCluster/default-dsc's 'Ready' condition to be 'True' [ocp_resources DataScienceCluster] 2026-07-12T18:31:20.758355Z [info ] Wait until DataScienceCluster default-dsc is created [ocp_resources DataScienceCluster] 2026-07-12T18:31:20.758555Z [info ] Waiting for 600 seconds [0:10:00], retry every 1 seconds. (Function: ocp_resources.resource.wait.lambda: self.exists) [timeout_sampler] 2026-07-12T18:31:20.777988Z [info ] Elapsed time: 3.457069396972656e-05 [0:00:00.000035] [timeout_sampler] 2026-07-12T18:31:20.778148Z [info ] Waiting for 599.9800446033478 seconds [0:09:59.980045], retry every 1 seconds. (Function: ocp_resources.resource.wait_for_condition.lambda: self.instance) [timeout_sampler] 2026-07-12T18:31:20.798833Z [info ] Elapsed time: 3.1948089599609375e-05 [0:00:00.000032] [timeout_sampler] 2026-07-12T18:31:20.798986Z [info ] ResourceEdits: Restoring data for resource Gateway maas-default-gateway [ocp_resources.resource] 2026-07-12T18:31:20.799128Z [info ] Update Gateway maas-default-gateway: {'metadata': {'annotations': {}, 'name': 'maas-default-gateway'}} [ocp_resources Gateway] _ 8 of 8 completed, 7 Pass, 1 Fail, 0 Skip, 0 XPass, 0 XFail, 0 Error, 0 ReRun _ ========== 1 failed, 7 passed, 167 deselected, 94 warnings in 14.75s =========== =================================== FAILURES =================================== __ TestAITenantTenantSetup.test_aitenant_bootstrap_creates_tenant_environment __ 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/model_serving/maas_billing/multitenancy/aitenant/test_tenant_setup.py", line 41, in test_aitenant_bootstrap_creates_tenant_environment verify_aitenant_bootstrap_children( ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ admin_client=admin_client, ^^^^^^^^^^^^^^^^^^^^^^^^^^ test_context=aitenant_for_test, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ) ^ File "/home/odh/opendatahub-tests/tests/model_serving/maas_billing/multitenancy/aitenant/utils.py", line 323, in verify_aitenant_bootstrap_children assert tenant_gateway_ref.name == MAAS_GATEWAY_NAME, ( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AssertionError: Tenant gatewayRef.name expected 'maas-default-gateway', got 'e2e-aigw-96b53a7f' =============================== warnings summary =============================== tests/model_serving/maas_billing/body_base_routing/pre_auth_model_header/test_bbr_envoy_filter.py: 8 warnings tests/model_serving/maas_billing/body_base_routing/pre_auth_model_header/test_bbr_setup.py: 7 warnings tests/model_serving/maas_billing/multitenancy/aitenant/test_tenant_setup.py: 79 warnings /workspace/tests-shared/tests-payload/.tools/python/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/maas_billing-smoke.xml - =========================== short test summary info ============================ FAILED tests/model_serving/maas_billing/multitenancy/aitenant/test_tenant_setup.py::TestAITenantTenantSetup::test_aitenant_bootstrap_creates_tenant_environment - AssertionError: Tenant gatewayRef.name expected 'maas-default-gateway', got 'e2e-aigw-96b53a7f' ========== 1 failed, 7 passed, 167 deselected, 94 warnings in 14.75s ===========