Skip to content

Conversation

@kuiwang02
Copy link
Contributor

@kuiwang02 kuiwang02 commented Nov 14, 2025

/cc @jianzhangbjz @Xia-Zhao-rh @bandrade

if you expect your migrated case to support disc, follow this PR. thanks

Summary

This PR adds disconnected environment support for migrated OLMv1 QE test cases by implementing environment validation and removing the [Skipped:Disconnected] label.

Changes

Test Cases Enhanced (8 cases now support disconnected)

All cases had [Skipped:Disconnected] removed from their test names.

New Helper Functions (helper.go)

  1. IsProxyCluster(oc *exutil.CLI) bool

    • Detects proxy clusters by checking proxy.config.openshift.io/v1 status
    • Single API call optimization (checks both httpProxy and httpsProxy)
    • Skips test if proxy status cannot be determined
  2. ValidateAccessEnvironment(oc *exutil.CLI)

    • Validates environment configuration before running disconnected-supporting tests
    • Three-tier detection: Proxy → Connected → Disconnected
    • Proxy clusters: Returns immediately (no validation needed)
    • Connected clusters: Returns after quick network check
    • Disconnected clusters: Validates ImageTagMirrorSet image-policy-aosqe exists
    • Skips test with clear message if ITMS missing in disconnected environment
  3. HasExternalNetworkAccess() enhancement

    • Changed behavior when master node unavailable: now skips test instead of assuming connected
    • Prevents incorrect environment assumptions

Documentation Updates (README.md)

  • Added "Disconnected Environment Support for Migrated QE cases" section
  • Added image requirements (quay.io/openshifttest or quay.io/olmqe only)
  • Documented three cluster types (Proxy/Connected/Disconnected)

Testing

All modified test cases now call olmv1util.ValidateAccessEnvironment(oc) at the beginning to ensure:

  • Tests skip gracefully if disconnected environment lacks proper ITMS configuration
  • Zero performance impact on connected/proxy clusters
  • Clear skip messages when environment is misconfigured

Dependencies

Requires IDMS/ITMS mirror configuration in disconnected environments:

  • ImageDigestMirrorSet for digest-based image references
  • ImageTagMirrorSet image-policy-aosqe for tag-based bundle images

Related Issues

  • OCPQE-31108: Adapt test cases for connected and disconnected environments
  • OCPQE-31109: enable-qe-catalogsource-disconnected step enhancements

Assisted-by: Claude Code

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

openshift-ci-robot commented Nov 14, 2025

@kuiwang02: This pull request references OCPQE-31108 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 sub-task to target the "4.21.0" version, but no target version was set.

In response to this:

/cc @jianzhangbjz @Xia-Zhao-rh @bandrade

if you expect your migrated case to support disc, follow this PR. thanks

Summary

This PR adds disconnected environment support for migrated OLMv1 QE test cases by implementing environment validation and removing the [Skipped:Disconnected] label.

Changes

Test Cases Enhanced (8 cases now support disconnected)

All cases had [Skipped:Disconnected] removed from their test names.

New Helper Functions (helper.go)

  1. IsProxyCluster(oc *exutil.CLI) bool

    • Detects proxy clusters by checking proxy.config.openshift.io/v1 status
    • Single API call optimization (checks both httpProxy and httpsProxy)
    • Skips test if proxy status cannot be determined
  2. ValidateAccessEnvironment(oc *exutil.CLI)

    • Validates environment configuration before running disconnected-supporting tests
    • Three-tier detection: Proxy → Connected → Disconnected
    • Proxy clusters: Returns immediately (no validation needed)
    • Connected clusters: Returns after quick network check
    • Disconnected clusters: Validates ImageTagMirrorSet image-policy-aosqe exists
    • Skips test with clear message if ITMS missing in disconnected environment
  3. HasExternalNetworkAccess() enhancement

    • Changed behavior when master node unavailable: now skips test instead of assuming connected
    • Prevents incorrect environment assumptions

Documentation Updates (README.md)

  • Added "Disconnected Environment Support for Migrated QE cases" section
  • Added image requirements (quay.io/openshifttest or quay.io/olmqe only)
  • Documented three cluster types (Proxy/Connected/Disconnected)

Testing

All modified test cases now call olmv1util.ValidateAccessEnvironment(oc) at the beginning to ensure:

  • Tests skip gracefully if disconnected environment lacks proper ITMS configuration
  • Zero performance impact on connected/proxy clusters
  • Clear skip messages when environment is misconfigured

Dependencies

Requires IDMS/ITMS mirror configuration in disconnected environments:

  • ImageDigestMirrorSet for digest-based image references
  • ImageTagMirrorSet image-policy-aosqe for tag-based bundle images

Related Issues

  • OCPQE-31108: Adapt test cases for connected and disconnected environments
  • OCPQE-31109: enable-qe-catalogsource-disconnected step enhancements

Assisted-by: Claude Code

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.

@kuiwang02
Copy link
Contributor Author

/payload-aggregate periodic-ci-openshift-operator-framework-operator-controller-release-4.21-periodics-e2e-aws-ovn-techpreview-extended-f1 5

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Nov 14, 2025

@kuiwang02: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command

  • periodic-ci-openshift-operator-framework-operator-controller-release-4.21-periodics-e2e-aws-ovn-techpreview-extended-f1

See details on https://pr-payload-tests.ci.openshift.org/runs/ci/953e9500-c101-11f0-997b-407cd820a35c-0

@kuiwang02
Copy link
Contributor Author

/verified by @kuiwang02

@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label Nov 14, 2025
@openshift-ci-robot
Copy link

@kuiwang02: This PR has been marked as verified by @kuiwang02.

In response to this:

/verified by @kuiwang02

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.

@kuiwang02
Copy link
Contributor Author

/test openshift-e2e-aws

@jianzhangbjz
Copy link
Contributor

/approve
/lgtm

@openshift-ci openshift-ci bot added the lgtm Indicates that a PR is ready to be merged. label Nov 14, 2025
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Nov 14, 2025

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: jianzhangbjz, kuiwang02

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

The pull request process is described here

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 Nov 14, 2025
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Nov 14, 2025

@kuiwang02: all tests passed!

Full PR test history. Your PR dashboard.

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.

@openshift-merge-bot openshift-merge-bot bot merged commit fa628bf into openshift:main Nov 14, 2025
13 checks passed
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. lgtm Indicates that a PR is ready to be merged. verified Signifies that the PR passed pre-merge verification criteria

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants