Validate whether TrustyAI operator, service and oauth-proxy images match the ones in the configmap#313
Validate whether TrustyAI operator, service and oauth-proxy images match the ones in the configmap#313sheltoncyril wants to merge 13 commits intoopendatahub-io:mainfrom
Conversation
Check if TrustyAI operator deployment oauth-proxy and trustyai-service pods are using the right images from the configmap in redhat-ods-applications namespace.
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the You can disable this status message by setting the WalkthroughA new pytest fixture for accessing the TrustyAI operator's ConfigMap was introduced. A test was added to verify that both the TrustyAI Operator and Service pods use the correct container images, as specified in the ConfigMap. Supporting utility functions and constants for image validation were also implemented. Changes
Sequence Diagram(s)sequenceDiagram
participant Test as test_trustyai_operator_and_service_images
participant ConfigMap as trustyai_operator_configmap
participant Utils as validate_trustyai_operator_and_service_images
participant Admin as admin_client
participant K8s as Kubernetes API
Test->>ConfigMap: Access ConfigMap data
Test->>Utils: Call validate_trustyai_operator_and_service_images(admin_client, namespace, configmap_data)
Utils->>K8s: Fetch TrustyAI Operator deployment
Utils->>K8s: Fetch TrustyAI Service pods in namespace
Utils->>Utils: Validate container images
Suggested labels
Poem
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
|
The following are automatically added/executed:
Available user actions:
Supported labels{'/verified', '/wip', '/lgtm', '/hold'} |
|
/wip |
|
@coderabbitai review |
✅ Actions performedReview triggered.
|
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
tests/model_explainability/trustyai_service/utils.py (1)
175-200: Consider adding error handling for missing ConfigMap keys.The validation function works well but assumes that specific keys exist in the ConfigMap. Consider adding validation to check if the required keys exist before accessing them to avoid potential KeyError exceptions.
Additionally, you might want to verify that both "oauth-proxy" and TrustyAI service containers were found in the pod, as the current implementation will silently skip validation if a container is not present.
Here's a suggested improvement:
def validate_trustyai_operator_and_service_images( client: DynamicClient, model_namespace: str, configmap_data_dict: dict[str, str] ) -> None: """Validate if the TrustyAI operator deployment and service pods use the correct images from the configmap.""" + # Verify required keys exist in configmap + required_keys = ["trustyaiOperatorImage", "oauthProxyImage", "trustyaiServiceImage"] + for key in required_keys: + if key not in configmap_data_dict: + raise KeyError(f"Required key '{key}' not found in ConfigMap data") + trustyai_deployment = Deployment( name=TRUSTYAI_OPERATOR_DEPLOYMENT_NAME, namespace=TRUSTYAI_OPERATOR_NAMESPACE, wait_for_resource=True ) assert ( trustyai_deployment.instance.spec.template.spec.containers[0].image == configmap_data_dict["trustyaiOperatorImage"] ) service_pods = list( Pod.get( dyn_client=client, namespace=model_namespace, label_selector=f"app.kubernetes.io/instance={TRUSTYAI_SERVICE_NAME}", ) ) if service_pods: if len(service_pods) > 1: raise TooManyPodsError("More than one pod found in TrustyAIService.") + + oauth_proxy_found = False + trustyai_service_found = False + for container_status in service_pods[0].instance.status.containerStatuses: if container_status.name == "oauth-proxy": + oauth_proxy_found = True assert configmap_data_dict["oauthProxyImage"] == container_status.image if container_status.name == TRUSTYAI_SERVICE_NAME: + trustyai_service_found = True assert configmap_data_dict["trustyaiServiceImage"] == container_status.image + + if not oauth_proxy_found: + raise AssertionError(f"Container 'oauth-proxy' not found in TrustyAI service pod") + if not trustyai_service_found: + raise AssertionError(f"Container '{TRUSTYAI_SERVICE_NAME}' not found in TrustyAI service pod") + else: + raise AssertionError(f"No TrustyAI service pods found in namespace '{model_namespace}'")
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (3)
tests/conftest.py(1 hunks)tests/model_explainability/trustyai_service/test_trustyai_service.py(2 hunks)tests/model_explainability/trustyai_service/utils.py(2 hunks)
🧰 Additional context used
🧬 Code Graph Analysis (2)
tests/model_explainability/trustyai_service/test_trustyai_service.py (3)
tests/model_explainability/trustyai_service/utils.py (1)
validate_trustyai_operator_and_service_images(175-200)tests/conftest.py (4)
admin_client(52-53)current_client_token(83-84)model_namespace(99-119)trustyai_operator_configmap(123-129)tests/model_explainability/trustyai_service/conftest.py (1)
trustyai_service_with_db_storage(93-107)
tests/model_explainability/trustyai_service/utils.py (2)
tests/conftest.py (1)
model_namespace(99-119)utilities/exceptions.py (1)
TooManyPodsError(107-108)
🔇 Additional comments (5)
tests/conftest.py (1)
122-129: Good fixture implementation.The fixture is well-structured and follows the established pattern in the file. It correctly returns a ConfigMap object for the TrustyAI service operator config in the appropriate namespace.
tests/model_explainability/trustyai_service/test_trustyai_service.py (3)
2-2: Appropriate import addition.The ConfigMap import is correctly added to support the new test functionality.
5-8: Good import organization.The import statement is properly updated to include the new validation function while maintaining the existing imports.
34-56: Well-structured test implementation.The test is properly parameterized and uses the appropriate fixtures. The test clearly defines its purpose in the docstring and follows the established testing pattern in the file.
tests/model_explainability/trustyai_service/utils.py (1)
23-24: Good constant declarations.The constants for the TrustyAI operator namespace and deployment name are properly defined with clear names and values.
| admin_client: DynamicClient, | ||
| teardown_resources: bool, | ||
| ) -> ConfigMap: | ||
| return ConfigMap(client=admin_client, namespace="redhat-ods-applications", name="trustyai-service-operator-config") |
There was a problem hiding this comment.
Few things here:
- yield instead of return
- use
ensure_existsto raise if the CM doesn't exist - use applications_namespace from pyconfig instead of
redhat-ods-applications - use TRUSTYAI_SERVICE_NAME constant in the name
- I think you don't need teardown_resources here
There was a problem hiding this comment.
I've made the changes but if you don't mind me asking, why yield if we are only fetching information and do not aim to modify it? I understand if there is some transactional way of doing things and we need to commit at the end but in this case a return would be more apt, right?
| yield trustyai_service | ||
|
|
||
|
|
||
| def validate_trustyai_operator_and_service_images( |
There was a problem hiding this comment.
Same, we need to split this into 2 functions, one for the service and one for the operator
* updates to test_registering_model() based on previous review comments * [do-not-review]must-gather collection at failure point updates! 1176505 updates! 12d9c08 updates! 12d9c08 updates! 65e0213 * [ModelRegistry] ensure RunAsUser and RunAsGroup are not set explicitly (#226) updates! 4813f2b updates! 20cd457 updates! b126825 updates! 809cca7 * Lock file maintenance (#241) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * RHOAIENG-22058: chore(workbenches): add test_create_simple_notebook to smoke (#238) * Remove uv cache from dockerfile to support running in envs like openshift-ci (#239) * Create size-labeler.yml * Delete .github/workflows/size-labeler.yml * model mesh - add auth tests * xx * fix: remove uv cache from dockerfile * `is_managed_cluster` fix condition (#243) * Create size-labeler.yml * Delete .github/workflows/size-labeler.yml * model mesh - add auth tests * xx * fix: replace iter with list * fix: add logger info * RHOAIENG-22057: fix(workbenches): correct the check for spawned workbench (#242) There can only ever be a single workbench pod started. Co-authored-by: Luca Giorgi <lgiorgi@redhat.com> * RHOAIENG-22057: fix(workbenches): check for internal image registry and adjust the image path accordingly (#244) * now yielding TimeoutSampler get_pods_by_isvc_label func output and handling raised ResourceNotFoundError (#237) Signed-off-by: Brett Thompson <196701379+brettmthompson@users.noreply.github.com> * [model server] add auth test to upgrade (#245) * Create size-labeler.yml * Delete .github/workflows/size-labeler.yml * model mesh - add auth tests * xx * feat: add auth test to upgrade * feat: add auth test to upgrade feat: add auth test to upgrade * fix: dsci name in func * [pre-commit.ci] pre-commit autoupdate (#246) updates: - [github.com/astral-sh/ruff-pre-commit: v0.11.4 → v0.11.5](astral-sh/ruff-pre-commit@v0.11.4...v0.11.5) - [github.com/gitleaks/gitleaks: v8.24.2 → v8.24.3](gitleaks/gitleaks@v8.24.2...v8.24.3) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Ruth Netser <rnetser@redhat.com> * Fix add-remove-labels workflow (#249) * Add Cluster sanity checks before test execution (#235) * Create size-labeler.yml * Delete .github/workflows/size-labeler.yml * model mesh - add auth tests * xx * feat: cluster sanity * feat: cluster sanity * feat: cluster sanity * feat: cluster sanity add readme * fix: tix str typo * fix: address comments * fix: address review comments * fix: address comment * fix: use dsci from global config * fix: remove duplicate fixture * add labeler to add labels to prs based on areas impacted (#248) * on rebase clean commented-by- labels (#251) * [model registry] update namespace code and rearrange tests (#247) * updates to test_registering_model() based on previous review comments * update namespace code and rearrange tests * remove unnecessary argument from function call (#255) * on rebase clean commented-by- labels * remove unnecessary argument from function call * feat: add ocp_interop marker (#260) * Lock file maintenance (#259) * Lock file maintenance * fix: add marshmallow version --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: rnetser <rnetser@redhat.com> * [pre-commit.ci] pre-commit autoupdate (#263) updates: - [github.com/astral-sh/ruff-pre-commit: v0.11.5 → v0.11.6](astral-sh/ruff-pre-commit@v0.11.5...v0.11.6) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Ruth Netser <rnetser@redhat.com> * feat: add upgrade tests (#258) * Remove flake8 ignore list (#265) * fix: remove flake8 ignore * fix: remove flake8 ignore * [model server] Remove pod pre-checks for image pull and fix `TestServerlessScaleToZero` (#256) * fix: update tests * fix: update tests * fix: update tests * fix: save test dep name * fix: minio mm external route * fix: address comemnt * fix: address comemnt * fix: address comemnt * Update python-dependencies (major) (#267) * Update python-dependencies * fix: marshmellow version --------- Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: rnetser <rnetser@redhat.com> * Adding Test For InferenceService Zero Initial Scale (#262) * adding test for zero initial scale Signed-off-by: Brett Thompson <196701379+brettmthompson@users.noreply.github.com> * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fixing precommit error Signed-off-by: Brett Thompson <196701379+brettmthompson@users.noreply.github.com> * using label_selectors when getting deployment Signed-off-by: Brett Thompson <196701379+brettmthompson@users.noreply.github.com> * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * adding argument names to func call and running pre-commit on all files Signed-off-by: Brett Thompson <196701379+brettmthompson@users.noreply.github.com> * fixing bug in ovms_kserve_inference_service function that was preventing isvcs from being created with 0 min-replicas Signed-off-by: Brett Thompson <196701379+brettmthompson@users.noreply.github.com> --------- Signed-off-by: Brett Thompson <196701379+brettmthompson@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * feat: move interop marker (#268) * feat: Add upgrade tests for TrustyAIService (#250) * feat: Add upgrade tests for TrustyAIService * Move upgrade README.md to docs/UPGRADE.md * fix: reuse kwargs in TrustyAIService fixture * fix: address comments, reuse kwargs, add docstrings --------- Co-authored-by: Ruth Netser <rnetser@redhat.com> * Fix ns deletion logic (#272) * fix: fix resource deletion fixture logic * fix: fix resource deletion fixture logic * feat: fail on missing operators (#257) * fix: update tests * fix: update tests * feat: fail on missing operators * fix: rename to dependent * fix: address comment * fix: add log on failure * fix: type in raise * fix: remove MR check * fix: remove MR check * fix: use package scope * Add basic InferenceGraph deployment check (#233) * Add basic InferenceGraph deployment check This adds a test that deploys an InferenceGraph (IG), sends an inference request to the IG and verifies that the request succeeds. The deployed InferenceGraph is based on the example on the KServe documentation available in the following URL: https://kserve.github.io/website/0.15/modelserving/inference_graph/image_pipeline/. The example was adapted to run in openvino (which is a supported server in ODH), rather than TorchServe. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Use cloud storage in InferenceGraph test Use cloud storage for the models, instead of OCI * Feedback: Ruth * Feedback: Ruth * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Apply Ruth suggestions Acknowledgement to @rnester for these changes. * More feedback: Ruth * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Ruth Netser <rnetser@redhat.com> * fix: address 503 (#274) * [model server] Move to using unprivileged_client in tests (#273) * feat: use unprivileged_client * feat: use unprivileged_client * feat: use unprivileged_client * feat: use unprivileged_client * feat: use unprivileged_client * feat: use unprivileged_client * fix: unpri selection * Update MinIo pod privileges to run on ocp 4.19 (#277) * fix: add securityContext for minio pod * fix: minio on 4.19 * [model server] add multi node args check (#276) * feat: add multi node args * feat: add multi node args * fix: add wait on delete * fix: update new test * [pre-commit.ci] pre-commit autoupdate (#279) updates: - [github.com/astral-sh/ruff-pre-commit: v0.11.6 → v0.11.7](astral-sh/ruff-pre-commit@v0.11.6...v0.11.7) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Ruth Netser <rnetser@redhat.com> * `verify_no_failed_pods` - exclude container failures when model mesh deployment (#278) * fix: mm container * fix: update condition * feat: add test for incorrect DB TLS config in Trusty AI (#221) * feat: add test for incorrect DB TLS config in Trusty AI * refactor: remove unused method from utils * feat: move TrustyAI test to own file * refactor: change name of db fixtures and deduplicate code * TrustyAI Service creation code refactor into own method * Move db secret setter to utils * Remove test from test_fairness as test moved to own file * docs: add description to TrustyAI invalid DB TLS config test * fix: check TrustyAIService container for Terminated status in lastStatus * fix: change name of terminal_state getter function * fix: change to a valid certificate and check for service failure * fix: address PR 221 reviewer feedback * revert wait_for_pods to wait_for_mariadb_pods * improve error checking logic * remove un-necessary wrapper function * docs: add docstring to create_trustyai_service method * docs: add docstring to trustyai_service_with_invalid_db_cert * fix: fix invalid return type for trustyai_db_ca_secret * feat: use retry decorator in validate trustyai_service_db_conn_failure method * fix: remove unnecessary return from validate db_conn_failure method * docs: add spacing between lines of docstring * refactor: create constants trustyai metrics and db storage config * refactor: address reviewer feedback - change docstring to correct formatting - remove len(0) check - no templating for error text * fix: use regex instead of in operator to check for error condition * docs: add correct formatting to docstrings * fix: use namespace.name instead of namespace in Pod.get * fix: remove \s from regex to check for spaces * refactor: add Raises section in docstring and use single string for pytest.fail * feat: use raise instead of pytest.fail - create new exception TooManyPodsError - create new exception UnexpectedFailureError - replace pytest.fail with raise and handle exceptions in retry - * fix: change default of teardown to True in TrustyAIService * docs: correct typo in trustyai docstring * docs: fix raises in docs and fix formatting * fix: fix create_trustyai_service namespace args issue * docs: add default for name arg in create tai svc func * [model server] Fix runtime request.param name to use external route (#280) * fix: fix param name * fix: fix param name * feat: add certs when sending requests to TrustyAIService (#266) * Wait for pods to be in running state before attempting to create ModelRegistry (#270) * on rebase clean commented-by- labels * Wait for pods to be in running state before attempting to create ModelRegistry * Address Exception in thread Thread-1 (_monitor) error (#286) * chore(deps): lock file maintenance (#287) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * [pre-commit.ci] pre-commit autoupdate (opendatahub-io#292) updates: - [github.com/astral-sh/ruff-pre-commit: v0.11.7 → v0.11.8](astral-sh/ruff-pre-commit@v0.11.7...v0.11.8) - [github.com/gitleaks/gitleaks: v8.24.3 → v8.25.1](gitleaks/gitleaks@v8.24.3...v8.25.1) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * Wait for dsc and dsci ready state in cluster_sanity check (opendatahub-io#293) * fix(workbenches): implement get_username for OpenShift <=4.14 (#275) Turns out SelfSubjectReview is only available starting OpenShift 4.15. fixup incorporate User resource * RedHatQE/openshift-python-wrapper#2387 fixup incorporate SelfSubjectReview resource * RedHatQE/openshift-python-wrapper#2389 Co-authored-by: Debarati Basu-Nag <dbasunag@redhat.com> * replace the bot account with one owned by testdevops (opendatahub-io#291) * Fix for post upgarde operator check (opendatahub-io#297) Signed-off-by: Milind Waykole <mwaykole@mwaykole-thinkpadp1gen4i.bengluru.csb> Co-authored-by: Milind Waykole <mwaykole@mwaykole-thinkpadp1gen4i.bengluru.csb> * Add test for Model Registry RBAC for SA token (opendatahub-io#296) * feat: add RBAC test for SA token Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: address review comments Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: incorporate coderabbit suggestions Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: remove unneeded variable Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: remove excessive logs Signed-off-by: lugi0 <lgiorgi@redhat.com> --------- Signed-off-by: lugi0 <lgiorgi@redhat.com> * Support /build-push-pr-image comment to push image to quay for testing via jenkins (opendatahub-io#290) updates! 678b389 * Add tests for model_artifact update validations (#284) * Add tests for model_artifact update validations * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * updates fixing pre-commit * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * update package * minor updates * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * address review comments updates! 50ec24b updates! f3a6c3e updates! 792156f updates! 399aa10 updates! 5080e3b updates! c34f4e7 updates! a1d7baa --------- Signed-off-by: Brett Thompson <196701379+brettmthompson@users.noreply.github.com> Signed-off-by: Milind Waykole <mwaykole@mwaykole-thinkpadp1gen4i.bengluru.csb> Signed-off-by: lugi0 <lgiorgi@redhat.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Jiri Daněk <jdanek@redhat.com> Co-authored-by: Ruth Netser <rnetser@redhat.com> Co-authored-by: Luca Giorgi <lgiorgi@redhat.com> Co-authored-by: Brett Thompson <196701379+brettmthompson@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Adolfo Aguirrezabal <aaguirre@redhat.com> Co-authored-by: Edgar Hernández <ehernand@redhat.com> Co-authored-by: Shelton Cyril <sheltoncyril@gmail.com> Co-authored-by: Milind Waykole <mwaykole@redhat.com> Co-authored-by: Milind Waykole <mwaykole@mwaykole-thinkpadp1gen4i.bengluru.csb>
* fixing TestServerlessScaleToZero test and adding new wait_for_deployments utility method Signed-off-by: Brett Thompson <196701379+brettmthompson@users.noreply.github.com> * removing wait_for_deployments func and reworking wait_for_inference_deployment_replicas func to handle the same bug Signed-off-by: Brett Thompson <196701379+brettmthompson@users.noreply.github.com> * adding new UnexpectedResourceCountError and now using dyn_client input param for Deployment.Get() calls Signed-off-by: Brett Thompson <196701379+brettmthompson@users.noreply.github.com> --------- Signed-off-by: Brett Thompson <196701379+brettmthompson@users.noreply.github.com>
…eated from the run (#283) Test to verify RBAC bug Create user for the test
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
updates: - [github.com/astral-sh/ruff-pre-commit: v0.11.10 → v0.11.11](astral-sh/ruff-pre-commit@v0.11.10...v0.11.11) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
…o#314) * fix: Use SA token for inference reqs in TrustyAI tests * fix: isvc-getter typo
* feat: add test to validate container images, improve ODH compatibility Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: Skip sidecar image check Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: fail if MR is Managed in RHOAI Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: Remove most ODH logic Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: ns reference in fixture Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: generalize pod getters and image verification Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: address review comments Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: add wait for single pod returned Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: mr_namespace constant removal Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: refactoring code Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: address comment and refactor Signed-off-by: lugi0 <lgiorgi@redhat.com> * feat: parse related image refs in a fixture Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: typo in fixtue name Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: address review comments Signed-off-by: lugi0 <lgiorgi@redhat.com> * fix: address review comments Signed-off-by: lugi0 <lgiorgi@redhat.com> --------- Signed-off-by: lugi0 <lgiorgi@redhat.com> Co-authored-by: Debarati Basu-Nag <dbasunag@redhat.com>
|
Closing due to merge issues, recreating another PR |
Check if TrustyAI operator deployment oauth-proxy
and trustyai-service pods are using the right images from the configmap in redhat-ods-applications namespace.
Makes sure the TrustyAI deployment and service pods are created with the right images using the configmap as the source of truth.
Adresses RHOAIENG-22502 and RHOAIENG-23499
Description
Added a new test which validates whether the deployment/service pods have the same data in the image fields as the configmap.
How Has This Been Tested?
Test run successfully on a PSI cluster.
Merge criteria:
Summary by CodeRabbit