Skip to content

feat(tests): handle clusters without OSSM Istio installation#1002

Open
silvi-t wants to merge 3 commits into
Kuadrant:mainfrom
silvi-t:CIO-clusters
Open

feat(tests): handle clusters without OSSM Istio installation#1002
silvi-t wants to merge 3 commits into
Kuadrant:mainfrom
silvi-t:CIO-clusters

Conversation

@silvi-t

@silvi-t silvi-t commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

Important

This PR modifies shared/core testsuite code that could potentially affect multiple test areas. 2 reviewers should review this PR to ensure adequate coverage.

Description

  • Add support for clusters with Gateway API-managed Istio (auto-provisioned openshift-gateway CR) that cannot be modified like a user-managed OSSM3 installation
  • mTLS and xfcc tests are skipped on Gateway API-managed Istio since they require modifying the Istio CR (sidecar injection, PeerAuthentication)
  • Data plane tracing tests are adjusted to work without gateway traces, since meshConfig.enableTracing, extensionProviders, and Telemetry resources cannot be configured on Gateway API-managed Istio

Changes

New pytest marker and fixture

  • Registered @pytest.mark.required_ossm marker in pyproject.toml for tests requiring user-managed OSSM3 Istio
  • Added has_ossm session fixture in testsuite/tests/conftest.py that detects whether a full OSSM3 Istio installation exists (returns False if only the auto-created openshift-gateway Istio CR is present)
  • Added check_required_ossm autouse fixture that skips/fails tests marked with @pytest.mark.required_ossm when OSSM3 is not available

Test adjustments

  • Added required_ossm marker to test_mtls_configuration.py, test_mtls_behaviour.py, and test_xfcc_forwarding.py
  • Adjusted test_kuadrant_tracing.py and test_kuadrant_tracing_rate_limit_only.py to make gateway service assertions conditional on has_ossm and lower min_processes thresholds when gateway traces are unavailable

Info collector

  • Added get_istio_type() to ReportPortalMetadataCollector to detect Istio installation type (gateway-api-managed, user-managed-ossm, or none) via cluster-wide Istio CR query
  • Updated test_istio_properties to first detect the Istio type and then query the correct namespace for metadata (openshift-ingress for Gateway API-managed, istio-system for user-managed OSSM) instead of
    hardcoding istio-system

Known failures (unrelated to this PR)

The following data plane tracing tests fail due to a known wasm-shim issue with missing send_reply spans and span hierarchy:

  • test_send_reply_span_on_request_rejection[429-trace_429]
  • test_send_reply_span_on_request_rejection[401-trace_401]
  • test_span_hierarchy

Verification steps

Run on a cluster with Gateway API-managed Istio (auto-provisioned openshift-gateway CR, no user-managed OSSM3):

  • mTLS and xfcc tests should be skipped
  • Tracing tests should pass without gateway service assertions
poetry run pytest -vv -n4 \
  testsuite/tests/singlecluster/gateway/mtls/test_mtls_configuration.py \
  testsuite/tests/singlecluster/gateway/mtls/test_mtls_behaviour.py \
  testsuite/tests/singlecluster/tracing/data_plane_tracing/test_kuadrant_tracing.py \
  testsuite/tests/singlecluster/tracing/data_plane_tracing/test_kuadrant_tracing_rate_limit_only.py \
  testsuite/tests/singlecluster/authorino/identity/x509/test_xfcc_forwarding.py

On a cluster with user-managed OSSM3, all tests should run and pass as before (no behavioral change).

Summary by CodeRabbit

  • Tests
    • Added a new pytest marker to flag tests that require a user-managed (not OCP-managed) Istio installation.
    • Enhanced the test harness to detect the cluster’s Istio type/namespace and skip or enforce those marker-tagged tests accordingly.
    • Updated gateway and tracing expectations to conditionally include gateway-related services/traces only when user-managed Istio is available.
    • Improved Istio properties/metadata reporting to use dynamically determined Istio namespace.

@coderabbitai

coderabbitai Bot commented Jun 12, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 73b9b22b-fb20-4cc6-99cc-6e42b5f34a9e

📥 Commits

Reviewing files that changed from the base of the PR and between 3257588 and db48de8.

📒 Files selected for processing (8)
  • pyproject.toml
  • testsuite/component_metadata.py
  • testsuite/tests/conftest.py
  • testsuite/tests/singlecluster/authorino/identity/x509/test_xfcc_forwarding.py
  • testsuite/tests/singlecluster/gateway/mtls/test_mtls_behaviour.py
  • testsuite/tests/singlecluster/gateway/mtls/test_mtls_configuration.py
  • testsuite/tests/singlecluster/tracing/data_plane_tracing/test_kuadrant_tracing.py
  • testsuite/tests/singlecluster/tracing/data_plane_tracing/test_kuadrant_tracing_rate_limit_only.py
✅ Files skipped from review due to trivial changes (1)
  • pyproject.toml
🚧 Files skipped from review as they are similar to previous changes (4)
  • testsuite/tests/singlecluster/authorino/identity/x509/test_xfcc_forwarding.py
  • testsuite/tests/singlecluster/gateway/mtls/test_mtls_configuration.py
  • testsuite/component_metadata.py
  • testsuite/tests/singlecluster/tracing/data_plane_tracing/test_kuadrant_tracing_rate_limit_only.py

📝 Walkthrough

Walkthrough

Adds a user_managed_istio pytest marker, has_user_managed_istio and autouse check_user_managed_istio fixtures, applies the marker to selected test modules, updates tracing tests to be conditional on has_user_managed_istio, and adds Istio-type detection used by the info collector to record and switch to the correct namespace.

Changes

User-Managed Istio Detection and Conditional Test Execution

Layer / File(s) Summary
Pytest marker definition and fixture infrastructure
pyproject.toml, testsuite/tests/conftest.py
Adds user_managed_istio marker to pytest config. Adds has_user_managed_istio session fixture to detect Istio resources outside openshift-gateway, and autouse check_user_managed_istio to skip/fail tests marked user_managed_istio when user-managed Istio is unavailable.
Apply user_managed_istio marker to test modules
testsuite/tests/singlecluster/authorino/identity/x509/test_xfcc_forwarding.py, testsuite/tests/singlecluster/gateway/mtls/test_mtls_behaviour.py, testsuite/tests/singlecluster/gateway/mtls/test_mtls_configuration.py
Adds pytest.mark.user_managed_istio to module-level pytestmark in three test modules.
Update tracing tests with conditional gateway service assertions
testsuite/tests/singlecluster/tracing/data_plane_tracing/test_kuadrant_tracing.py, testsuite/tests/singlecluster/tracing/data_plane_tracing/test_kuadrant_tracing_rate_limit_only.py
Updates module documentation, fixture and test signatures to accept has_user_managed_istio. Adjusts wasm-shim min_processes expectations and conditionally includes gateway service assertions only when has_user_managed_istio is true.
Istio discovery and reporting
testsuite/component_metadata.py, testsuite/tests/info_collector.py
Adds ReportPortalMetadataCollector.get_istio_type(cluster) to detect Istio deployment mode and namespace; test_istio_properties records istio_type, skips clusters with unknown namespace, and switches to the discovered namespace for reporting.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

  • Kuadrant/testsuite#911: Both PRs modify the Istio reporting path—testsuite/tests/info_collector.py's test_istio_properties and corresponding testsuite/component_metadata.py logic—so the main PR's changes to dynamically classify and use the Istio namespace are directly related to the retrieved PR's initial info-collector/metadata refactor.

Suggested reviewers

  • azgabur
  • emmaaroche

🐰 I hop through the Istio nest with glee,
Detecting user-managed or OCP-managed, you see,
When Gateway API rules the day,
My tests gracefully skip away,
Tracing adapts—a rabbit's harmony! 🌿

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description provides comprehensive detail on the objectives, changes, and verification steps; however, there is a discrepancy between the PR description (which mentions required_ossm marker and has_ossm fixture) and the actual implementation (which uses user_managed_istio marker and has_user_managed_istio fixture). Align the description to correctly reference the implemented user_managed_istio marker and has_user_managed_istio fixture names instead of the outdated required_ossm and has_ossm terminology.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title 'feat(tests): handle clusters without OSSM Istio installation' clearly summarises the main change—adding support for clusters with non-modifiable, Gateway API-managed Istio rather than user-managed OSSM3.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@testsuite/tests/conftest.py`:
- Around line 451-456: The has_ossm fixture's logic is inverted: instead of
returning True when any user-managed Istio CR exists it currently returns True
when none exist and False when both exist; open the has_ossm function and inside
with cluster.context call selector("Istio", all_namespaces=True).objects() and
first check if the returned list is empty—if so return False; otherwise return
True if any istio.name() != "openshift-gateway" (i.e. at least one user-managed
Istio CR exists), otherwise return False. Ensure you reference the
selector("Istio", all_namespaces=True) call and the has_ossm fixture name when
applying the change.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 5605a709-141a-44f0-a45b-b786524d3293

📥 Commits

Reviewing files that changed from the base of the PR and between 540c20b and e3a7f1f.

📒 Files selected for processing (7)
  • pyproject.toml
  • testsuite/tests/conftest.py
  • testsuite/tests/singlecluster/authorino/identity/x509/test_xfcc_forwarding.py
  • testsuite/tests/singlecluster/gateway/mtls/test_mtls_behaviour.py
  • testsuite/tests/singlecluster/gateway/mtls/test_mtls_configuration.py
  • testsuite/tests/singlecluster/tracing/data_plane_tracing/test_kuadrant_tracing.py
  • testsuite/tests/singlecluster/tracing/data_plane_tracing/test_kuadrant_tracing_rate_limit_only.py

Comment thread testsuite/tests/conftest.py Outdated
Signed-off-by: Silvia Tarabova <starabov@redhat.com>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

♻️ Duplicate comments (1)
testsuite/tests/conftest.py (1)

451-456: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

has_ossm misclassifies mixed Istio environments.

At Line 456, the predicate returns False when both openshift-gateway and at least one user-managed Istio CR exist. That breaks the fixture contract and can wrongly skip required_ossm tests and downgrade tracing expectations. Detect OSSM by checking for any non-openshift-gateway Istio CR.

Suggested fix
 `@pytest.fixture`(scope="session")
 def has_ossm(cluster):
     """True if a full OSSM3 Istio installation exists (not just Gateway API-managed Istio)"""
     with cluster.context:
         istios = selector("Istio", all_namespaces=True).objects()
-        return bool(istios) and not any(i.name() == "openshift-gateway" for i in istios)
+        return any(i.name() != "openshift-gateway" for i in istios)
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@testsuite/tests/conftest.py` around lines 451 - 456, The has_ossm fixture
currently returns False if any Istio CR named "openshift-gateway" exists, even
when other user-managed Istio CRs are present; change the predicate to detect
OSSM when any Istio CR has a name different from "openshift-gateway". In the
has_ossm function (which calls selector("Istio",
all_namespaces=True).objects()), replace the return expression with a check
like: return any(i.name() != "openshift-gateway" for i in istios) so that
presence of at least one non-"openshift-gateway" Istio CR yields True.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Duplicate comments:
In `@testsuite/tests/conftest.py`:
- Around line 451-456: The has_ossm fixture currently returns False if any Istio
CR named "openshift-gateway" exists, even when other user-managed Istio CRs are
present; change the predicate to detect OSSM when any Istio CR has a name
different from "openshift-gateway". In the has_ossm function (which calls
selector("Istio", all_namespaces=True).objects()), replace the return expression
with a check like: return any(i.name() != "openshift-gateway" for i in istios)
so that presence of at least one non-"openshift-gateway" Istio CR yields True.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 5c2ebf78-2af6-456a-a90b-f73e5b1157b3

📥 Commits

Reviewing files that changed from the base of the PR and between e3a7f1f and 78f7d32.

📒 Files selected for processing (7)
  • pyproject.toml
  • testsuite/tests/conftest.py
  • testsuite/tests/singlecluster/authorino/identity/x509/test_xfcc_forwarding.py
  • testsuite/tests/singlecluster/gateway/mtls/test_mtls_behaviour.py
  • testsuite/tests/singlecluster/gateway/mtls/test_mtls_configuration.py
  • testsuite/tests/singlecluster/tracing/data_plane_tracing/test_kuadrant_tracing.py
  • testsuite/tests/singlecluster/tracing/data_plane_tracing/test_kuadrant_tracing_rate_limit_only.py
✅ Files skipped from review due to trivial changes (3)
  • testsuite/tests/singlecluster/gateway/mtls/test_mtls_behaviour.py
  • pyproject.toml
  • testsuite/tests/singlecluster/gateway/mtls/test_mtls_configuration.py
🚧 Files skipped from review as they are similar to previous changes (2)
  • testsuite/tests/singlecluster/authorino/identity/x509/test_xfcc_forwarding.py
  • testsuite/tests/singlecluster/tracing/data_plane_tracing/test_kuadrant_tracing_rate_limit_only.py

@silvi-t silvi-t requested a review from a team June 12, 2026 10:23
@silvi-t silvi-t self-assigned this Jun 12, 2026
@silvi-t silvi-t added this to Kuadrant Jun 12, 2026
@silvi-t silvi-t moved this to Ready For Review in Kuadrant Jun 12, 2026

@fabikova fabikova left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@testsuite/component_metadata.py`:
- Around line 141-146: The helper currently hardcodes namespaces and treats any
presence of an "openshift-gateway" CR as gateway-managed; change it to derive
the namespace from the discovered Istio CR objects and only classify as
"gateway-api-managed" when the sole Istio CR is named "openshift-gateway".
Concretely, in the block using istios = oc.selector("Istio",
all_namespaces=True).objects(), return "none", None if istios is empty; if
len(istios) == 1 and istios[0].name() == "openshift-gateway" return
"gateway-api-managed" and use istios[0].namespace() for the namespace; otherwise
return "user-managed-ossm" and use the namespace() of a representative Istio CR
(e.g., the first non-openshift-gateway CR if present, or istios[0].namespace())
instead of hardcoding "openshift-ingress" or "istio-system".
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: f35dd9dd-8fa2-43e4-9825-f6fdce596262

📥 Commits

Reviewing files that changed from the base of the PR and between 78f7d32 and 5d7f156.

📒 Files selected for processing (2)
  • testsuite/component_metadata.py
  • testsuite/tests/info_collector.py

Comment thread testsuite/component_metadata.py Outdated
Signed-off-by: Silvia Tarabova <starabov@redhat.com>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

♻️ Duplicate comments (1)
testsuite/component_metadata.py (1)

144-150: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Mixed-install detection is misclassified as gateway-managed.

At Line 145, any presence of openshift-gateway immediately returns "gateway-api-managed", and at Line 147 user-managed OSSM is only recognised when CR name is exactly default. This can misreport clusters that have both CRs (or non-default user-managed CR names), causing test_istio_properties() to collect from the wrong namespace or skip valid metadata paths.

Suggested minimal fix
-                gateway_istio = next((i for i in istios if i.name() == "openshift-gateway"), None)
-                if gateway_istio:
-                    return "gateway-api-managed", gateway_istio.model.spec.namespace
-                ossm_istio = next((i for i in istios if i.name() == "default"), None)
-                if ossm_istio:
-                    return "user-managed-ossm", ossm_istio.model.spec.namespace
+                gateway_istio = next((i for i in istios if i.name() == "openshift-gateway"), None)
+                non_gateway_istio = next((i for i in istios if i.name() != "openshift-gateway"), None)
+
+                if gateway_istio and non_gateway_istio is None:
+                    return "gateway-api-managed", gateway_istio.model.spec.namespace
+
+                if non_gateway_istio:
+                    return "user-managed-ossm", non_gateway_istio.model.spec.namespace
+
                 return "none", None
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@testsuite/component_metadata.py` around lines 144 - 150, The current logic
checks for gateway_istio first and only recognizes user-managed OSSM when the CR
name is exactly "default", which misclassifies mixed installs; update the
detection to first look for any non-"openshift-gateway" Istio CR (change
ossm_istio search from i.name()=="default" to i.name()!="openshift-gateway") and
prefer returning "user-managed-ossm" when such an OSSM CR exists, otherwise
return "gateway-api-managed" if gateway_istio exists, else "none"; adjust the
code around the gateway_istio and ossm_istio variables in the same block to
reflect this new preference and naming.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Duplicate comments:
In `@testsuite/component_metadata.py`:
- Around line 144-150: The current logic checks for gateway_istio first and only
recognizes user-managed OSSM when the CR name is exactly "default", which
misclassifies mixed installs; update the detection to first look for any
non-"openshift-gateway" Istio CR (change ossm_istio search from
i.name()=="default" to i.name()!="openshift-gateway") and prefer returning
"user-managed-ossm" when such an OSSM CR exists, otherwise return
"gateway-api-managed" if gateway_istio exists, else "none"; adjust the code
around the gateway_istio and ossm_istio variables in the same block to reflect
this new preference and naming.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: c5966d87-148d-4df6-94ad-3bdfcac3883d

📥 Commits

Reviewing files that changed from the base of the PR and between 5d7f156 and 3257588.

📒 Files selected for processing (2)
  • testsuite/component_metadata.py
  • testsuite/tests/info_collector.py
🚧 Files skipped from review as they are similar to previous changes (1)
  • testsuite/tests/info_collector.py

def has_ossm(cluster):
"""True if a full OSSM3 Istio installation exists (not just Gateway API-managed Istio)"""
with cluster.context:
istios = selector("Istio", all_namespaces=True).objects()

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

won't this fail without ignore_not_found: true on .objects() call?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

.objects() has ignore_not_found=True by default

"""True if a full OSSM3 Istio installation exists (not just Gateway API-managed Istio)"""
with cluster.context:
istios = selector("Istio", all_namespaces=True).objects()
return bool(istios) and not any(i.name() == "openshift-gateway" for i in istios)

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Existing Istio resource that is not named openshift-gateway on the cluster doesn't mean that OSSM will be installed there. Could work for now, although would probably pass if Istio is installed through the Sail Operator on kind clusters

Comment thread testsuite/tests/conftest.py Outdated
Gateway API-managed Istio does not allow modifications to the Istio CR."""
marker = request.node.get_closest_marker("required_ossm")
if marker and not has_ossm:
skip_or_fail("Test requires user-managed OSSM3 Istio; Gateway API-managed Istio cannot be modified")

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
skip_or_fail("Test requires user-managed OSSM3 Istio; Gateway API-managed Istio cannot be modified")
skip_or_fail("Test requires Istio installed through the OpenShift Service Mesh")

it's OCP-managed, not gateway api-managed

Comment thread testsuite/component_metadata.py Outdated
return "none", None
gateway_istio = next((i for i in istios if i.name() == "openshift-gateway"), None)
if gateway_istio:
return "gateway-api-managed", gateway_istio.model.spec.namespace

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's OCP-managed, not gateway api-managed

Comment thread testsuite/component_metadata.py Outdated
Comment on lines +150 to +153
return "none", None
except (oc.OpenShiftPythonException, AttributeError, KeyError) as e:
logger.warning("Failed to detect Istio type: %s", e)
return "none", None

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
return "none", None
except (oc.OpenShiftPythonException, AttributeError, KeyError) as e:
logger.warning("Failed to detect Istio type: %s", e)
return "none", None
except (oc.OpenShiftPythonException, AttributeError, KeyError) as e:
logger.warning("Failed to detect Istio type: %s", e)
return "none", None

Comment thread pyproject.toml Outdated
"egress_gateway: Test is using egress gateway",
"min_ocp_version: Minimum OpenShift version required for test (e.g., @pytest.mark.min_ocp_version((4, 20)))",
"gateway_api_version: Gateway API version requirement (e.g., @pytest.mark.gateway_api_version((1, 5, 0)) or @pytest.mark.gateway_api_version((1, 5, 0), operator.eq))",
"required_ossm: Test requires user-managed OSSM3 Istio that can be modified (skipped with Gateway API-managed Istio)",

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think something like service_mesh_istio would be more verbose, wyt?

Signed-off-by: Silvia Tarabova <starabov@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Ready For Review

Development

Successfully merging this pull request may close these issues.

3 participants