Skip to content

USHIFT-6748: [QE] Migrate OTP tests into RF: operators#6502

Open
agullon wants to merge 1 commit intoopenshift:mainfrom
agullon:USHIFT-6748
Open

USHIFT-6748: [QE] Migrate OTP tests into RF: operators#6502
agullon wants to merge 1 commit intoopenshift:mainfrom
agullon:USHIFT-6748

Conversation

@agullon
Copy link
Copy Markdown
Contributor

@agullon agullon commented Apr 14, 2026

Summary

Migrates three OLM Ginkgo tests from openshift-tests-private to MicroShift Robot Framework:

  • Single namespace install (69867): SingleNamespace OperatorGroup + operator install + resource verification
  • AllNamespaces with OG conflict (69868): MultipleOperatorGroupsFound error, conflict resolution, CSV propagation to default namespace
  • NetworkPolicy validation (83581): Validates the four OLM-deployed NetworkPolicies

Also fixes pre-existing bugs in Get CSV Name From Subscription (ignored arguments) and Wait For Deployments Deletion (missing namespace argument).

Companion PR removing the original Ginkgo tests: openshift/openshift-tests-private#29784

Test plan

  • Run test/suites/optional/olm.robot on a MicroShift instance with OLM installed

Jira: https://issues.redhat.com/browse/USHIFT-6748

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Apr 14, 2026
@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented Apr 14, 2026

@agullon: This pull request references USHIFT-6748 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "4.22.0" version, but no target version was set.

Details

In response to this:

Summary

Migrates three openshift-tests-private Ginkgo tests (69867, 69868, 83581) to MicroShift Robot Framework test suite in test/suites/optional/olm.robot.

  • Install Operator In Single Namespace Mode (69867): Creates a dedicated namespace with a SingleNamespace OperatorGroup and installs nginx-ok1-1399, verifying CSV reaches Succeeded and the operators.operators.coreos.com resource has expected resource type references.
  • Install Operator In All Namespaces Mode With OperatorGroup Conflict (69868): Creates a second AllNamespaces OperatorGroup alongside the pre-existing global-operators, verifies MultipleOperatorGroupsFound blocks CSV installation, then resolves the conflict and confirms the CSV installs and propagates to the default namespace.
  • OLM Network Policies Are Correctly Configured (83581): Validates the four NetworkPolicies deployed by MicroShift OLM assets (catalog-operator, default-deny-all-traffic, olm-operator, default-allow-all) for correct pod selectors, policy types, and key ingress/egress rules.

New asset YAMLs added under test/assets/olm/ for the OperatorGroups, CatalogSources, and Subscriptions used by the new tests.

Also fixes a pre-existing bug in Get CSV Name From Subscription where it ignored its arguments and always used the hardcoded suite-level variables ${OPERATORS_NAMESPACE} and ${SUBSCRIPTION_NAME}.

Test plan

  • Run test/suites/optional/olm.robot on a MicroShift instance with OLM installed and internet access
  • Verify Install Operator In Single Namespace Mode installs and cleans up correctly
  • Verify Install Operator In All Namespaces Mode With OperatorGroup Conflict hits the MultipleOperatorGroupsFound condition before resolving
  • Verify OLM Network Policies Are Correctly Configured passes without any OLM-specific setup

Jira: https://issues.redhat.com/browse/USHIFT-6748

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 14, 2026

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

Walkthrough

Adds OLM test assets and Robot Framework tests: new CatalogSource, Subscription, and OperatorGroup manifests for single- and all-namespace installs; updated Robot keywords and new tests validating install flows, OperatorGroup conflict detection/recovery, CSV/subscription polling, and NetworkPolicy assertions.

Changes

Cohort / File(s) Summary
OLM CatalogSources
test/assets/olm/nginx-ok-catalog-source-all.yaml, test/assets/olm/nginx-ok-catalog-source-single.yaml
Added two CatalogSource manifests (operators.coreos.com/v1alpha1, sourceType: grpc) referencing quay.io/olmqe/nginx-ok-index:v1399-fbc-multi, with displayName: Test Nginx Operators, publisher: OLM QE, and grpcPodConfig.securityContextConfig: restricted.
OLM Subscriptions
test/assets/olm/nginx-ok1-subscription.yaml, test/assets/olm/nginx-ok2-subscription.yaml
Added two Subscription manifests (operators.coreos.com/v1alpha1) with channel: alpha, installPlanApproval: Automatic, and spec.name matching each subscription; one targets the single-namespace catalog, the other the all-namespace catalog.
OLM OperatorGroups
test/assets/olm/og-single.yaml, test/assets/olm/og-all.yaml
Added OperatorGroup manifests: og-singlenamespace scoped to olm-microshift-69867 (single-namespace) and og-all in openshift-operators (all-namespaces).
Test Suite & Keywords
test/suites/optional/olm.robot
Added Robot tests for single-namespace install, all-namespaces install with OperatorGroup conflict/recovery, and NetworkPolicy validations. Updated keywords: CatalogSource Should Be Ready uses ${namespace} for events; Get CSV Name From Subscription accepts ${namespace} ${name} and asserts non-empty status.currentCSV; Wait For Deployments Deletion calls Oc Wait -n ${namespace} deployment/${deploy} --for=delete. Added keywords for subscription/CSV polling, conflict checks, CSV existence assertions, teardown flows, and NetworkPolicy spec/selector/type validations.

Sequence Diagram(s)

sequenceDiagram
    participant Tester as Test Runner
    participant API as Kubernetes API
    participant OLM as OLM Controller
    participant Operator as Operator Deployment
    participant NP as NetworkPolicy Validator

    Tester->>API: apply OperatorGroup, CatalogSource, Subscription
    API->>OLM: create CatalogSource & Subscription resources
    OLM-->>API: emit CatalogSource readiness events
    OLM->>API: create InstallPlan / CSV
    API->>Operator: create Deployment/Pods
    Operator-->>OLM: update CSV status
    Tester->>API: poll Subscription.status.currentCSV and verify CSV existence
    Tester->>NP: validate NetworkPolicy selectors, types, and spec
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

🚥 Pre-merge checks | ✅ 10
✅ Passed checks (10 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the main change: migrating OTP tests into Robot Framework, specifically for the operators test suite.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Stable And Deterministic Test Names ✅ Passed PR adds four Robot Framework tests with stable, descriptive names following best practices for test naming conventions.
Test Structure And Quality ✅ Passed The custom check requires reviewing Ginkgo test code quality, but this PR adds Robot Framework tests, not Ginkgo tests. The check is not applicable.
Microshift Test Compatibility ✅ Passed OLM is a documented optional MicroShift component with existing working tests using identical APIs and runtime guards.
Single Node Openshift (Sno) Test Compatibility ✅ Passed Three new tests are fully compatible with Single Node OpenShift, operating against standard OLM and Kubernetes APIs with no multi-node topology assumptions.
Topology-Aware Scheduling Compatibility ✅ Passed PR adds OLM test infrastructure with manifests containing only configuration metadata, no scheduling constraints or topology-dependent assumptions.
Ote Binary Stdout Contract ✅ Passed PR adds YAML Kubernetes manifests and modifies Robot Framework test file. No Go source code or binaries present that could violate OTE Binary Stdout Contract.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed PR adds Robot Framework tests and YAML manifests, not Ginkgo Go tests. External registry references fall outside Ginkgo-specific check criteria.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

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

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

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

@agullon agullon marked this pull request as draft April 14, 2026 17:15
@openshift-ci openshift-ci bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Apr 14, 2026
@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented Apr 14, 2026

@agullon: This pull request references USHIFT-6748 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "4.22.0" version, but no target version was set.

Details

In response to this:

Summary

Migrates three openshift-tests-private Ginkgo tests (69867, 69868, 83581) to MicroShift Robot Framework test suite in test/suites/optional/olm.robot.

  • Install Operator In Single Namespace Mode (69867): Creates a dedicated namespace with a SingleNamespace OperatorGroup and installs nginx-ok1-1399, verifying CSV reaches Succeeded and the operators.operators.coreos.com resource has expected resource type references.
  • Install Operator In All Namespaces Mode With OperatorGroup Conflict (69868): Creates a second AllNamespaces OperatorGroup alongside the pre-existing global-operators, verifies MultipleOperatorGroupsFound blocks CSV installation, then resolves the conflict and confirms the CSV installs and propagates to the default namespace.
  • OLM Network Policies Are Correctly Configured (83581): Validates the four NetworkPolicies deployed by MicroShift OLM assets (catalog-operator, default-deny-all-traffic, olm-operator, default-allow-all) for correct pod selectors, policy types, and key ingress/egress rules.

New asset YAMLs added under test/assets/olm/ for the OperatorGroups, CatalogSources, and Subscriptions used by the new tests.

Also fixes a pre-existing bug in Get CSV Name From Subscription where it ignored its arguments and always used the hardcoded suite-level variables ${OPERATORS_NAMESPACE} and ${SUBSCRIPTION_NAME}.

Test plan

  • Run test/suites/optional/olm.robot on a MicroShift instance with OLM installed and internet access
  • Verify Install Operator In Single Namespace Mode installs and cleans up correctly
  • Verify Install Operator In All Namespaces Mode With OperatorGroup Conflict hits the MultipleOperatorGroupsFound condition before resolving
  • Verify OLM Network Policies Are Correctly Configured passes without any OLM-specific setup

Jira: https://issues.redhat.com/browse/USHIFT-6748

Summary by CodeRabbit

Release Notes

  • Tests
  • Added new test assets for OLM (Operator Lifecycle Manager) validation including CatalogSource, Subscription, and OperatorGroup manifests.
  • Expanded test coverage for single-namespace and all-namespaces operator installation scenarios.
  • Added NetworkPolicy validation test cases.
  • Improved test keyword logic for subscription and CSV status verification.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci openshift-ci bot requested review from copejon and eslutsky April 14, 2026 17:16
@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci bot commented Apr 14, 2026

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: agullon

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Apr 14, 2026
Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

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 the current code and only fix it if needed.

Inline comments:
In `@test/suites/optional/olm.robot`:
- Line 87: The VAR declaration currently creates a variable named "csv=" due to
the extra equals sign; change the variable declaration from using "VAR ${csv}=
${EMPTY}" to the correct Robot Framework syntax "VAR ${csv} ${EMPTY}" so that
subsequent usages of ${csv} (e.g., where ${csv} is referenced later in the test)
resolve correctly.
🪄 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: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: ddf25b2d-7445-4f3c-a2ec-45367c69010c

📥 Commits

Reviewing files that changed from the base of the PR and between 685552c and eb8799f.

📒 Files selected for processing (7)
  • test/assets/olm/nginx-ok-catalog-source-all.yaml
  • test/assets/olm/nginx-ok-catalog-source-single.yaml
  • test/assets/olm/nginx-ok1-subscription.yaml
  • test/assets/olm/nginx-ok2-subscription.yaml
  • test/assets/olm/og-all.yaml
  • test/assets/olm/og-single.yaml
  • test/suites/optional/olm.robot

Comment thread test/suites/optional/olm.robot
@agullon agullon marked this pull request as ready for review April 14, 2026 17:56
@openshift-ci openshift-ci bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Apr 14, 2026
@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented Apr 14, 2026

@agullon: This pull request references USHIFT-6748 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

Migrates three openshift-tests-private Ginkgo tests (69867, 69868, 83581) to MicroShift Robot Framework test suite in `test/suites/optional/olm.robot`.

  • Install Operator In Single Namespace Mode (69867): Creates a dedicated namespace with a `SingleNamespace` OperatorGroup targeting that namespace and installs `nginx-ok1-1399`, verifying CSV reaches `Succeeded` and the `operators.operators.coreos.com` resource has expected resource type references.
  • Install Operator In All Namespaces Mode With OperatorGroup Conflict (69868): Creates a second `AllNamespaces` OperatorGroup alongside the pre-existing `global-operators`, verifies `MultipleOperatorGroupsFound` blocks CSV installation, then resolves the conflict and confirms the CSV installs and propagates to the `default` namespace.
  • OLM Network Policies Are Correctly Configured (83581): Validates the four NetworkPolicies deployed by MicroShift OLM assets (`catalog-operator`, `default-deny-all-traffic`, `olm-operator`, `default-allow-all`) for correct pod selectors, policy types, and key ingress/egress rules.

New asset YAMLs added under `test/assets/olm/` for the OperatorGroups, CatalogSources, and Subscriptions used by the new tests.

Additional fixes

  • Pre-existing bug in `Get CSV Name From Subscription`: it ignored its arguments and always used hardcoded suite-level variables `${OPERATORS_NAMESPACE}` and `${SUBSCRIPTION_NAME}`.
  • `CatalogSource Should Be Ready` EXCEPT block hardcoded `openshift-marketplace` for diagnostic event logging instead of using the `${namespace}` argument — making failures in the single-namespace test log events from the wrong namespace.
  • `CSV Should Exist In Namespace`: replaced a string-contains check against `oc get csv` table output (substring false-positive risk) with a direct `Oc Get` call.
  • `Get CSV Name From Subscription`: added guard asserting `currentCSV` is non-empty before returning, to avoid a cryptic failure if the subscription is in `AtLatestKnown` state but the field is not yet populated.
  • `All Namespaces Test Teardown`: added bulk CSV fallback cleanup when `${csv}` was not recorded (test failed before CSV installation), to avoid orphaned resources across runs.
  • Teardown keywords wrapped with `Run Keyword And Continue On Failure` so all cleanup steps execute even if an earlier step hits an API error.
  • `Subscription Should Be AtLatestKnown` docstring typo: `AtLeastKnown` → `AtLatestKnown`.
  • `olm-operator` NetworkPolicy egress rules now verified (DNS port 53), matching the coverage applied to `catalog-operator`.
  • `MultipleOperatorGroupsFound` detection timeout bumped from 2 m to 10 m to match other OLM waits and tolerate slow CI environments.

Test plan

  • Run `test/suites/optional/olm.robot` on a MicroShift instance with OLM installed and internet access
  • Verify `Install Operator In Single Namespace Mode` installs and cleans up correctly
  • Verify `Install Operator In All Namespaces Mode With OperatorGroup Conflict` hits the `MultipleOperatorGroupsFound` condition before resolving
  • Verify `OLM Network Policies Are Correctly Configured` passes on a MicroShift instance with OLM installed

Jira: https://issues.redhat.com/browse/USHIFT-6748

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented Apr 14, 2026

@agullon: This pull request references USHIFT-6748 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

Migrates three openshift-tests-private Ginkgo tests (69867, 69868, 83581) to MicroShift Robot Framework test suite in `test/suites/optional/olm.robot`.

  • Install Operator In Single Namespace Mode (69867): Creates a dedicated namespace with a `SingleNamespace` OperatorGroup targeting that namespace and installs `nginx-ok1-1399`, verifying CSV reaches `Succeeded` and the `operators.operators.coreos.com` resource has expected resource type references.
  • Install Operator In All Namespaces Mode With OperatorGroup Conflict (69868): Creates a second `AllNamespaces` OperatorGroup alongside the pre-existing `global-operators`, verifies `MultipleOperatorGroupsFound` blocks CSV installation, then resolves the conflict and confirms the CSV installs and propagates to the `default` namespace.
  • OLM Network Policies Are Correctly Configured (83581): Validates the four NetworkPolicies deployed by MicroShift OLM assets (`catalog-operator`, `default-deny-all-traffic`, `olm-operator`, `default-allow-all`) for correct pod selectors, policy types, and key ingress/egress rules.

New asset YAMLs added under `test/assets/olm/` for the OperatorGroups, CatalogSources, and Subscriptions used by the new tests.

Additional fixes

  • Pre-existing bug in `Get CSV Name From Subscription`: it ignored its arguments and always used hardcoded suite-level variables `${OPERATORS_NAMESPACE}` and `${SUBSCRIPTION_NAME}`.
  • `CatalogSource Should Be Ready` EXCEPT block hardcoded `openshift-marketplace` for diagnostic event logging instead of using the `${namespace}` argument — making failures in the single-namespace test log events from the wrong namespace.
  • `CSV Should Exist In Namespace`: replaced a string-contains check against `oc get csv` table output (substring false-positive risk) with a direct `Oc Get` call.
  • `Get CSV Name From Subscription`: added guard asserting `currentCSV` is non-empty before returning, to avoid a cryptic failure if the subscription is in `AtLatestKnown` state but the field is not yet populated.
  • `All Namespaces Test Teardown`: added bulk CSV fallback cleanup when `${csv}` was not recorded (test failed before CSV installation), to avoid orphaned resources across runs.
  • Teardown keywords wrapped with `Run Keyword And Continue On Failure` so all cleanup steps execute even if an earlier step hits an API error.
  • `Subscription Should Be AtLatestKnown` docstring typo: `AtLeastKnown` → `AtLatestKnown`.
  • `olm-operator` NetworkPolicy egress rules now verified (DNS port 53), matching the coverage applied to `catalog-operator`.
  • `MultipleOperatorGroupsFound` detection timeout bumped from 2 m to 10 m to match other OLM waits and tolerate slow CI environments.

Test plan

  • Run `test/suites/optional/olm.robot` on a MicroShift instance with OLM installed and internet access
  • Verify `Install Operator In Single Namespace Mode` installs and cleans up correctly
  • Verify `Install Operator In All Namespaces Mode With OperatorGroup Conflict` hits the `MultipleOperatorGroupsFound` condition before resolving
  • Verify `OLM Network Policies Are Correctly Configured` passes on a MicroShift instance with OLM installed

Jira: https://issues.redhat.com/browse/USHIFT-6748

Summary by CodeRabbit

  • Tests
  • Added OLM validation assets for CatalogSource, Subscription, and OperatorGroup to support operator install scenarios.
  • Expanded test coverage for single-namespace and all-namespaces operator installations, including conflict handling and recovery.
  • Added NetworkPolicy validation cases to assert selectors, policy types, and spec fields.
  • Improved test keywords and control flow for robust subscription and CSV readiness checks and cleanup.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci openshift-ci bot requested a review from jogeo April 14, 2026 17:57
@agullon agullon changed the title USHIFT-6748: Add RF tests for OLM single/all-namespace install and network policies USHIFT-6748: [QE] Migrate OTP tests into RF: operators Apr 14, 2026
@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented Apr 15, 2026

@agullon: This pull request references USHIFT-6748 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

Migrates three openshift-tests-private Ginkgo tests (69867, 69868, 83581) to MicroShift Robot Framework test suite in `test/suites/optional/olm.robot`.

  • Install Operator In Single Namespace Mode (69867): Creates a dedicated namespace with a `SingleNamespace` OperatorGroup targeting that namespace and installs `nginx-ok1-1399`, verifying CSV reaches `Succeeded` and the `operators.operators.coreos.com` resource has expected resource type references.
  • Install Operator In All Namespaces Mode With OperatorGroup Conflict (69868): Creates a second `AllNamespaces` OperatorGroup alongside the pre-existing `global-operators`, verifies `MultipleOperatorGroupsFound` blocks CSV installation, then resolves the conflict and confirms the CSV installs and propagates to the `default` namespace.
  • OLM Network Policies Are Correctly Configured (83581): Validates the four NetworkPolicies deployed by MicroShift OLM assets (`catalog-operator`, `default-deny-all-traffic`, `olm-operator`, `default-allow-all`) for correct pod selectors, policy types, and key ingress/egress rules.

New asset YAMLs added under `test/assets/olm/` for the OperatorGroups, CatalogSources, and Subscriptions used by the new tests.

Additional fixes

  • Pre-existing bug in `Get CSV Name From Subscription`: it ignored its arguments and always used hardcoded suite-level variables `${OPERATORS_NAMESPACE}` and `${SUBSCRIPTION_NAME}`.
  • `CatalogSource Should Be Ready` EXCEPT block hardcoded `openshift-marketplace` for diagnostic event logging instead of using the `${namespace}` argument — making failures in the single-namespace test log events from the wrong namespace.
  • `CSV Should Exist In Namespace`: replaced a string-contains check against `oc get csv` table output (substring false-positive risk) with a direct `Oc Get` call.
  • `Get CSV Name From Subscription`: added guard asserting `currentCSV` is non-empty before returning, to avoid a cryptic failure if the subscription is in `AtLatestKnown` state but the field is not yet populated.
  • `All Namespaces Test Teardown`: added bulk CSV fallback cleanup when `${csv}` was not recorded (test failed before CSV installation), to avoid orphaned resources across runs.
  • Teardown keywords wrapped with `Run Keyword And Continue On Failure` so all cleanup steps execute even if an earlier step hits an API error.
  • `Subscription Should Be AtLatestKnown` docstring typo: `AtLeastKnown` → `AtLatestKnown`.
  • `olm-operator` NetworkPolicy egress rules now verified (DNS port 53), matching the coverage applied to `catalog-operator`.
  • `MultipleOperatorGroupsFound` detection timeout bumped from 2 m to 10 m to match other OLM waits and tolerate slow CI environments.

Test plan

  • Run `test/suites/optional/olm.robot` on a MicroShift instance with OLM installed and internet access
  • Verify `Install Operator In Single Namespace Mode` installs and cleans up correctly
  • Verify `Install Operator In All Namespaces Mode With OperatorGroup Conflict` hits the `MultipleOperatorGroupsFound` condition before resolving
  • Verify `OLM Network Policies Are Correctly Configured` passes on a MicroShift instance with OLM installed

Jira: https://issues.redhat.com/browse/USHIFT-6748

Summary by CodeRabbit

  • Tests
  • Added OLM validation assets: CatalogSource, Subscription, and OperatorGroup manifests for single-namespace and all-namespaces scenarios.
  • Expanded test coverage for install flows, conflict handling/recovery, and NetworkPolicy validations (selectors, policy types, spec fields).
  • Enhanced test keywords and control flow for robust CatalogSource/Subscription/CSV readiness checks, polling for installedCSV, cleanup/teardown flows, and related assertions.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🧹 Nitpick comments (1)
test/suites/optional/olm.robot (1)

352-359: Bulk CSV cleanup may affect parallel tests.

csv --all -n ${OPERATORS_NAMESPACE} deletes all CSVs in the namespace, which could interfere with other tests running concurrently. Consider scoping by label if parallel execution is expected.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@test/suites/optional/olm.robot` around lines 352 - 359, The bulk CSV deletion
using "Oc Delete    csv --all -n ${OPERATORS_NAMESPACE} --ignore-not-found" can
remove CSVs from parallel tests; change the ELSE branch in the cleanup to avoid
--all and instead target CSVs by a test-specific label or selector (e.g., use
"Oc Delete    csv -n ${OPERATORS_NAMESPACE} --selector <test-label>=<value>
--ignore-not-found") or skip bulk deletion when ${csv} is empty; update the "Oc
Delete" invocation and ensure the test applies a unique label to CSVs so the
selector scopes deletions to this test only.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@test/suites/optional/olm.robot`:
- Line 57: The test calls the Robot keyword Wait For Deployments Deletion
without the required ${namespace} argument, so the teardown will fail; update
the call to pass the namespace as the first argument followed by the deployments
list (i.e., call Wait For Deployments Deletion    ${namespace}   
@{deployments}) so the keyword receives both the namespace and the deployments
to wait on.

---

Nitpick comments:
In `@test/suites/optional/olm.robot`:
- Around line 352-359: The bulk CSV deletion using "Oc Delete    csv --all -n
${OPERATORS_NAMESPACE} --ignore-not-found" can remove CSVs from parallel tests;
change the ELSE branch in the cleanup to avoid --all and instead target CSVs by
a test-specific label or selector (e.g., use "Oc Delete    csv -n
${OPERATORS_NAMESPACE} --selector <test-label>=<value> --ignore-not-found") or
skip bulk deletion when ${csv} is empty; update the "Oc Delete" invocation and
ensure the test applies a unique label to CSVs so the selector scopes deletions
to this test only.
🪄 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: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: 79a52d10-ef59-4b48-9b96-9eb60fe2c231

📥 Commits

Reviewing files that changed from the base of the PR and between 5bbeae7 and a001db3.

📒 Files selected for processing (7)
  • test/assets/olm/nginx-ok-catalog-source-all.yaml
  • test/assets/olm/nginx-ok-catalog-source-single.yaml
  • test/assets/olm/nginx-ok1-subscription.yaml
  • test/assets/olm/nginx-ok2-subscription.yaml
  • test/assets/olm/og-all.yaml
  • test/assets/olm/og-single.yaml
  • test/suites/optional/olm.robot
✅ Files skipped from review due to trivial changes (6)
  • test/assets/olm/og-single.yaml
  • test/assets/olm/og-all.yaml
  • test/assets/olm/nginx-ok2-subscription.yaml
  • test/assets/olm/nginx-ok-catalog-source-all.yaml
  • test/assets/olm/nginx-ok1-subscription.yaml
  • test/assets/olm/nginx-ok-catalog-source-single.yaml

Comment thread test/suites/optional/olm.robot Outdated
@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented Apr 15, 2026

@agullon: This pull request references USHIFT-6748 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

Migrates three openshift-tests-private Ginkgo tests (69867, 69868, 83581) to MicroShift Robot Framework test suite in `test/suites/optional/olm.robot`.

  • Install Operator In Single Namespace Mode (69867): Creates a dedicated namespace with a `SingleNamespace` OperatorGroup targeting that namespace and installs `nginx-ok1-1399`, verifying CSV reaches `Succeeded` and the `operators.operators.coreos.com` resource has expected resource type references.
  • Install Operator In All Namespaces Mode With OperatorGroup Conflict (69868): Creates a second `AllNamespaces` OperatorGroup alongside the pre-existing `global-operators`, verifies `MultipleOperatorGroupsFound` blocks CSV installation, then resolves the conflict and confirms the CSV installs and propagates to the `default` namespace.
  • OLM Network Policies Are Correctly Configured (83581): Validates the four NetworkPolicies deployed by MicroShift OLM assets (`catalog-operator`, `default-deny-all-traffic`, `olm-operator`, `default-allow-all`) for correct pod selectors, policy types, and key ingress/egress rules.

New asset YAMLs added under `test/assets/olm/` for the OperatorGroups, CatalogSources, and Subscriptions used by the new tests.

Additional fixes

  • Pre-existing bug in `Get CSV Name From Subscription`: it ignored its arguments and always used hardcoded suite-level variables `${OPERATORS_NAMESPACE}` and `${SUBSCRIPTION_NAME}`.
  • `CatalogSource Should Be Ready` EXCEPT block hardcoded `openshift-marketplace` for diagnostic event logging instead of using the `${namespace}` argument — making failures in the single-namespace test log events from the wrong namespace.
  • `CSV Should Exist In Namespace`: replaced a string-contains check against `oc get csv` table output (substring false-positive risk) with a direct `Oc Get` call.
  • `Get CSV Name From Subscription`: added guard asserting `currentCSV` is non-empty before returning, to avoid a cryptic failure if the subscription is in `AtLatestKnown` state but the field is not yet populated.
  • `All Namespaces Test Teardown`: added bulk CSV fallback cleanup when `${csv}` was not recorded (test failed before CSV installation), to avoid orphaned resources across runs.
  • Teardown keywords wrapped with `Run Keyword And Continue On Failure` so all cleanup steps execute even if an earlier step hits an API error.
  • `Subscription Should Be AtLatestKnown` docstring typo: `AtLeastKnown` → `AtLatestKnown`.
  • `olm-operator` NetworkPolicy egress rules now verified (DNS port 53), matching the coverage applied to `catalog-operator`.
  • `MultipleOperatorGroupsFound` detection timeout bumped from 2 m to 10 m to match other OLM waits and tolerate slow CI environments.

Test plan

  • Run `test/suites/optional/olm.robot` on a MicroShift instance with OLM installed and internet access
  • Verify `Install Operator In Single Namespace Mode` installs and cleans up correctly
  • Verify `Install Operator In All Namespaces Mode With OperatorGroup Conflict` hits the `MultipleOperatorGroupsFound` condition before resolving
  • Verify `OLM Network Policies Are Correctly Configured` passes on a MicroShift instance with OLM installed

Jira: https://issues.redhat.com/browse/USHIFT-6748

Summary by CodeRabbit

  • Tests
  • Added OLM validation assets covering CatalogSource, Subscription, and OperatorGroup scenarios for single-namespace and all-namespaces installs.
  • Expanded test coverage for install flows, OperatorGroup conflict detection/recovery, and NetworkPolicy validations (selectors, types, specs).
  • Improved test keywords and control flow for CatalogSource/Subscription/CSV readiness checks, polling for installedCSV, teardown/cleanup flows, and related assertions.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

♻️ Duplicate comments (1)
test/suites/optional/olm.robot (1)

262-267: ⚠️ Potential issue | 🔴 Critical

Wait For Deployments Deletion signature change breaks an existing caller.

After adding ${namespace} to this keyword, the teardown call at Line 57 still passes only @{deployments}, which will fail at runtime due to argument mismatch.

Proposed fix
-    ...    Wait For Deployments Deletion    @{deployments}
+    ...    Wait For Deployments Deletion    ${OPERATORS_NAMESPACE}    @{deployments}
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@test/suites/optional/olm.robot` around lines 262 - 267, The keyword Wait For
Deployments Deletion was changed to require a ${namespace}, breaking existing
callers that only pass @{deployments}; make the namespace optional by changing
the signature to accept a default (e.g. [Arguments]   
${namespace}=${DEFAULT_NAMESPACE}    @{deployments}) and update the body to use
${namespace} as before (Oc Wait -n ${namespace} ...). This preserves existing
callers while allowing explicit namespaces when provided.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Duplicate comments:
In `@test/suites/optional/olm.robot`:
- Around line 262-267: The keyword Wait For Deployments Deletion was changed to
require a ${namespace}, breaking existing callers that only pass @{deployments};
make the namespace optional by changing the signature to accept a default (e.g.
[Arguments]    ${namespace}=${DEFAULT_NAMESPACE}    @{deployments}) and update
the body to use ${namespace} as before (Oc Wait -n ${namespace} ...). This
preserves existing callers while allowing explicit namespaces when provided.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: 1b4d4e84-80ee-465d-9913-3ef3ee5e3f86

📥 Commits

Reviewing files that changed from the base of the PR and between a001db3 and bffa4b4.

📒 Files selected for processing (7)
  • test/assets/olm/nginx-ok-catalog-source-all.yaml
  • test/assets/olm/nginx-ok-catalog-source-single.yaml
  • test/assets/olm/nginx-ok1-subscription.yaml
  • test/assets/olm/nginx-ok2-subscription.yaml
  • test/assets/olm/og-all.yaml
  • test/assets/olm/og-single.yaml
  • test/suites/optional/olm.robot
✅ Files skipped from review due to trivial changes (6)
  • test/assets/olm/og-all.yaml
  • test/assets/olm/nginx-ok2-subscription.yaml
  • test/assets/olm/nginx-ok-catalog-source-all.yaml
  • test/assets/olm/og-single.yaml
  • test/assets/olm/nginx-ok1-subscription.yaml
  • test/assets/olm/nginx-ok-catalog-source-single.yaml

@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented Apr 15, 2026

@agullon: This pull request references USHIFT-6748 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

Migrates three openshift-tests-private Ginkgo tests (69867, 69868, 83581) to MicroShift Robot Framework test suite in `test/suites/optional/olm.robot`.

  • Install Operator In Single Namespace Mode (69867): Creates a dedicated namespace with a `SingleNamespace` OperatorGroup targeting that namespace and installs `nginx-ok1-1399`, verifying CSV reaches `Succeeded` and the `operators.operators.coreos.com` resource has expected resource type references.
  • Install Operator In All Namespaces Mode With OperatorGroup Conflict (69868): Creates a second `AllNamespaces` OperatorGroup alongside the pre-existing `global-operators`, verifies `MultipleOperatorGroupsFound` blocks CSV installation, then resolves the conflict and confirms the CSV installs and propagates to the `default` namespace.
  • OLM Network Policies Are Correctly Configured (83581): Validates the four NetworkPolicies deployed by MicroShift OLM assets (`catalog-operator`, `default-deny-all-traffic`, `olm-operator`, `default-allow-all`) for correct pod selectors, policy types, and key ingress/egress rules.

New asset YAMLs added under `test/assets/olm/` for the OperatorGroups, CatalogSources, and Subscriptions used by the new tests.

Additional fixes

  • Pre-existing bug in `Get CSV Name From Subscription`: it ignored its arguments and always used hardcoded suite-level variables `${OPERATORS_NAMESPACE}` and `${SUBSCRIPTION_NAME}`.
  • `CatalogSource Should Be Ready` EXCEPT block hardcoded `openshift-marketplace` for diagnostic event logging instead of using the `${namespace}` argument — making failures in the single-namespace test log events from the wrong namespace.
  • `CSV Should Exist In Namespace`: replaced a string-contains check against `oc get csv` table output (substring false-positive risk) with a direct `Oc Get` call.
  • `Get CSV Name From Subscription`: added guard asserting `currentCSV` is non-empty before returning, to avoid a cryptic failure if the subscription is in `AtLatestKnown` state but the field is not yet populated.
  • `All Namespaces Test Teardown`: added bulk CSV fallback cleanup when `${csv}` was not recorded (test failed before CSV installation), to avoid orphaned resources across runs.
  • Teardown keywords wrapped with `Run Keyword And Continue On Failure` so all cleanup steps execute even if an earlier step hits an API error.
  • `Subscription Should Be AtLatestKnown` docstring typo: `AtLeastKnown` → `AtLatestKnown`.
  • `olm-operator` NetworkPolicy egress rules now verified (DNS port 53), matching the coverage applied to `catalog-operator`.
  • `MultipleOperatorGroupsFound` detection timeout bumped from 2 m to 10 m to match other OLM waits and tolerate slow CI environments.

Test plan

  • Run `test/suites/optional/olm.robot` on a MicroShift instance with OLM installed and internet access
  • Verify `Install Operator In Single Namespace Mode` installs and cleans up correctly
  • Verify `Install Operator In All Namespaces Mode With OperatorGroup Conflict` hits the `MultipleOperatorGroupsFound` condition before resolving
  • Verify `OLM Network Policies Are Correctly Configured` passes on a MicroShift instance with OLM installed

Jira: https://issues.redhat.com/browse/USHIFT-6748

Summary by CodeRabbit

  • Tests
  • Added OLM test manifests: multiple CatalogSource, Subscription, and OperatorGroup resources to exercise single-namespace and all-namespaces install flows.
  • Added test cases for single-namespace install, all-namespaces conflict/recovery, and NetworkPolicy validations (selectors, types, specs).
  • Enhanced test keywords and control flow for CatalogSource/Subscription/CSV readiness, installedCSV polling, deployment teardown, and related assertions.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@test/suites/optional/olm.robot`:
- Around line 102-103: Increase the retry window for the CSV propagation check:
update the call to the Robot Framework keyword Wait Until Keyword Succeeds that
invokes CSV Should Exist In Namespace for ${csv} in the default namespace so the
first argument (total timeout) is 10m instead of 2m, keeping the retry interval
(10s) the same; locate the invocation of Wait Until Keyword Succeeds and the
nested CSV Should Exist In Namespace (${csv} default) and change only the
timeout value.
- Around line 355-357: Replace the dangerous global CSV deletion (the Oc Delete
call that uses "csv --all -n ${OPERATORS_NAMESPACE} --ignore-not-found") with a
scoped cleanup keyword such as Cleanup CSVs For Subscription that takes
${namespace} and ${subscription_name}, uses Oc Get JsonPath to list
clusterserviceversions (.items[*].metadata.name), Splits that result into
@{csv_list}, iterates the list and only calls Oc Delete for names that start
with "${subscription_name}." (use an IF with startswith) so only CSVs belonging
to that subscription are removed; update the test to call this keyword instead
of deleting all CSVs.
🪄 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: Repository YAML (base), Central YAML (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: ad7db79d-1983-4393-852c-f048d313d189

📥 Commits

Reviewing files that changed from the base of the PR and between bffa4b4 and cf95b91.

📒 Files selected for processing (7)
  • test/assets/olm/nginx-ok-catalog-source-all.yaml
  • test/assets/olm/nginx-ok-catalog-source-single.yaml
  • test/assets/olm/nginx-ok1-subscription.yaml
  • test/assets/olm/nginx-ok2-subscription.yaml
  • test/assets/olm/og-all.yaml
  • test/assets/olm/og-single.yaml
  • test/suites/optional/olm.robot
✅ Files skipped from review due to trivial changes (6)
  • test/assets/olm/og-all.yaml
  • test/assets/olm/og-single.yaml
  • test/assets/olm/nginx-ok2-subscription.yaml
  • test/assets/olm/nginx-ok1-subscription.yaml
  • test/assets/olm/nginx-ok-catalog-source-single.yaml
  • test/assets/olm/nginx-ok-catalog-source-all.yaml

Comment thread test/suites/optional/olm.robot
Comment thread test/suites/optional/olm.robot
…twork policies

Migrate three openshift-tests-private Ginkgo tests (69867, 69868, 83581)
to MicroShift Robot Framework test suite:

- Install Operator In Single Namespace Mode: creates a dedicated namespace
  with a SingleNamespace OperatorGroup and verifies nginx-ok1-1399 CSV
  installation and expected operator resources.
- Install Operator In All Namespaces Mode With OperatorGroup Conflict:
  verifies MultipleOperatorGroupsFound error when two AllNamespaces OGs
  coexist, then confirms successful install after removing the extra OG.
  Also verifies CSV propagation to the default namespace.
- OLM Network Policies Are Correctly Configured: validates the four
  NetworkPolicies deployed by MicroShift OLM (catalog-operator,
  default-deny-all-traffic, olm-operator, default-allow-all).

Adds asset YAMLs for OperatorGroups, CatalogSources, and Subscriptions
used by the new tests.

Also fixes a pre-existing bug in Get CSV Name From Subscription where it
ignored its arguments and always used hardcoded suite-level variables,
and a pre-existing bug where Wait For Deployments Deletion was called
without the required namespace argument.

pre-commit.check-secrets: ENABLED
@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented Apr 15, 2026

@agullon: This pull request references USHIFT-6748 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

Migrates three openshift-tests-private Ginkgo tests (69867, 69868, 83581) to MicroShift Robot Framework test suite in `test/suites/optional/olm.robot`.

  • Install Operator In Single Namespace Mode (69867): Creates a dedicated namespace with a `SingleNamespace` OperatorGroup targeting that namespace and installs `nginx-ok1-1399`, verifying CSV reaches `Succeeded` and the `operators.operators.coreos.com` resource has expected resource type references.
  • Install Operator In All Namespaces Mode With OperatorGroup Conflict (69868): Creates a second `AllNamespaces` OperatorGroup alongside the pre-existing `global-operators`, verifies `MultipleOperatorGroupsFound` blocks CSV installation, then resolves the conflict and confirms the CSV installs and propagates to the `default` namespace.
  • OLM Network Policies Are Correctly Configured (83581): Validates the four NetworkPolicies deployed by MicroShift OLM assets (`catalog-operator`, `default-deny-all-traffic`, `olm-operator`, `default-allow-all`) for correct pod selectors, policy types, and key ingress/egress rules.

New asset YAMLs added under `test/assets/olm/` for the OperatorGroups, CatalogSources, and Subscriptions used by the new tests.

Additional fixes

  • Pre-existing bug in `Get CSV Name From Subscription`: it ignored its arguments and always used hardcoded suite-level variables `${OPERATORS_NAMESPACE}` and `${SUBSCRIPTION_NAME}`.
  • `CatalogSource Should Be Ready` EXCEPT block hardcoded `openshift-marketplace` for diagnostic event logging instead of using the `${namespace}` argument — making failures in the single-namespace test log events from the wrong namespace.
  • `CSV Should Exist In Namespace`: replaced a string-contains check against `oc get csv` table output (substring false-positive risk) with a direct `Oc Get` call.
  • `Get CSV Name From Subscription`: added guard asserting `currentCSV` is non-empty before returning, to avoid a cryptic failure if the subscription is in `AtLatestKnown` state but the field is not yet populated.
  • `All Namespaces Test Teardown`: added bulk CSV fallback cleanup when `${csv}` was not recorded (test failed before CSV installation), to avoid orphaned resources across runs.
  • Teardown keywords wrapped with `Run Keyword And Continue On Failure` so all cleanup steps execute even if an earlier step hits an API error.
  • `Subscription Should Be AtLatestKnown` docstring typo: `AtLeastKnown` → `AtLatestKnown`.
  • `olm-operator` NetworkPolicy egress rules now verified (DNS port 53), matching the coverage applied to `catalog-operator`.
  • `MultipleOperatorGroupsFound` detection timeout bumped from 2 m to 10 m to match other OLM waits and tolerate slow CI environments.

Test plan

  • Run `test/suites/optional/olm.robot` on a MicroShift instance with OLM installed and internet access
  • Verify `Install Operator In Single Namespace Mode` installs and cleans up correctly
  • Verify `Install Operator In All Namespaces Mode With OperatorGroup Conflict` hits the `MultipleOperatorGroupsFound` condition before resolving
  • Verify `OLM Network Policies Are Correctly Configured` passes on a MicroShift instance with OLM installed

Jira: https://issues.redhat.com/browse/USHIFT-6748

Summary by CodeRabbit

  • Tests
  • Added OLM test manifests: multiple CatalogSource, Subscription, and OperatorGroup resources to exercise single-namespace and all-namespaces install flows.
  • Added test cases for single-namespace install, all-namespaces conflict/recovery, and NetworkPolicy validations (selectors, types, specs).
  • Enhanced test keywords and control flow for CatalogSource/Subscription/CSV readiness, installedCSV polling, deployment teardown, and related assertions.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented Apr 15, 2026

@agullon: This pull request references USHIFT-6748 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

Migrates three OLM Ginkgo tests from openshift-tests-private to MicroShift Robot Framework:

  • Single namespace install (69867): SingleNamespace OperatorGroup + operator install + resource verification
  • AllNamespaces with OG conflict (69868): MultipleOperatorGroupsFound error, conflict resolution, CSV propagation to default namespace
  • NetworkPolicy validation (83581): Validates the four OLM-deployed NetworkPolicies

Also fixes pre-existing bugs in Get CSV Name From Subscription (ignored arguments) and Wait For Deployments Deletion (missing namespace argument).

Companion PR removing the original Ginkgo tests: openshift/openshift-tests-private#29784

Test plan

  • Run test/suites/optional/olm.robot on a MicroShift instance with OLM installed

Jira: https://issues.redhat.com/browse/USHIFT-6748

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci-robot
Copy link
Copy Markdown

openshift-ci-robot commented Apr 15, 2026

@agullon: This pull request references USHIFT-6748 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the task to target the "5.0.0" version, but no target version was set.

Details

In response to this:

Summary

Migrates three OLM Ginkgo tests from openshift-tests-private to MicroShift Robot Framework:

  • Single namespace install (69867): SingleNamespace OperatorGroup + operator install + resource verification
  • AllNamespaces with OG conflict (69868): MultipleOperatorGroupsFound error, conflict resolution, CSV propagation to default namespace
  • NetworkPolicy validation (83581): Validates the four OLM-deployed NetworkPolicies

Also fixes pre-existing bugs in Get CSV Name From Subscription (ignored arguments) and Wait For Deployments Deletion (missing namespace argument).

Companion PR removing the original Ginkgo tests: openshift/openshift-tests-private#29784

Test plan

  • Run test/suites/optional/olm.robot on a MicroShift instance with OLM installed

Jira: https://issues.redhat.com/browse/USHIFT-6748

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci
Copy link
Copy Markdown
Contributor

openshift-ci bot commented Apr 15, 2026

@agullon: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants