Skip to content

Commit b5373c4

Browse files
committed
feat: add fixture for trustyai operator deployment
1 parent fa66c3f commit b5373c4

3 files changed

Lines changed: 21 additions & 11 deletions

File tree

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import pytest
2+
from kubernetes.dynamic import DynamicClient
3+
from pytest_testconfig import config as py_config
4+
from ocp_resources.deployment import Deployment
5+
6+
from tests.model_explainability.trustyai_service.trustyai_service_utils import TRUSTYAI_SERVICE_NAME
7+
8+
9+
@pytest.fixture(scope="class")
10+
def trustyai_operator_deployment(admin_client: DynamicClient) -> Deployment:
11+
return Deployment(
12+
client=admin_client,
13+
name=f"{TRUSTYAI_SERVICE_NAME}-operator-controller-manager",
14+
namespace=py_config["applications_namespace"],
15+
ensure_exists=True,
16+
)
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
import pytest
22
from ocp_resources.config_map import ConfigMap
3+
from ocp_resources.deployment import Deployment
4+
35
from tests.model_explainability.trustyai_operator.utils import validate_trustyai_operator_image
46

57

@@ -8,9 +10,10 @@ def test_validate_trustyai_operator_image(
810
admin_client,
911
related_images_refs: set[str],
1012
trustyai_operator_configmap: ConfigMap,
13+
trustyai_operator_deployment: Deployment,
1114
):
1215
return validate_trustyai_operator_image(
13-
client=admin_client,
1416
related_images_refs=related_images_refs,
1517
tai_operator_configmap_data=trustyai_operator_configmap.instance.data,
18+
tai_operator_deployment=trustyai_operator_deployment,
1619
)

tests/model_explainability/trustyai_operator/utils.py

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,17 @@
1-
from kubernetes.dynamic import DynamicClient
21
from ocp_resources.deployment import Deployment
32

4-
from tests.model_explainability.trustyai_service.trustyai_service_utils import TRUSTYAI_SERVICE_NAME
5-
from pytest_testconfig import config as py_config
63
from utilities.general import validate_image_format
74

85

96
def validate_trustyai_operator_image(
10-
client: DynamicClient, related_images_refs: set[str], tai_operator_configmap_data: dict[str, str]
7+
related_images_refs: set[str], tai_operator_configmap_data: dict[str, str], tai_operator_deployment: Deployment
118
) -> None:
129
"""Validates the TrustyAI operator image.
1310
Checks if:
1411
- container image matches that of the operator configmap.
1512
- image is present in relatedImages of CSV.
1613
- image complies with OpenShift AI requirements i.e. sourced from registry.redhat.io and pinned w/o tags.
1714
"""
18-
tai_operator_deployment = Deployment(
19-
client=client,
20-
name=f"{TRUSTYAI_SERVICE_NAME}-operator-controller-manager",
21-
namespace=py_config["applications_namespace"],
22-
wait_for_resource=True,
23-
)
2415
tai_operator_image = tai_operator_deployment.instance.spec.template.spec.containers[0].image
2516
assert tai_operator_image == tai_operator_configmap_data["trustyaiOperatorImage"]
2617
assert tai_operator_image in related_images_refs

0 commit comments

Comments
 (0)