Skip to content

Conversation

rikatz
Copy link
Member

@rikatz rikatz commented Sep 24, 2025

This change implements the OTE (Openshift Tests Extension) on Cluster Ingress Operator, and migrates 2 tests suites to it:

  • GatewayAPI - Test assertion for GatewayAPI capability
  • GatewayAPI Controller - Test for GatewayAPI controller + Sail integrations

As the tests were originally based on openshift/origin, a part of the framework had to be migrated/adapted to the new approach. This was necessary to avoid importing the whole openshift/origin and kubernetes/kubernetes tree just for test helper functions.

There is still pending work:

  • Generate the binary and add to the container image - To be called by openshift/origin tests
  • Migrate / add the capability of non privileged client to the client framework

@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 Sep 24, 2025
Copy link
Contributor

openshift-ci bot commented Sep 24, 2025

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign bentito for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found 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

Comment on lines +58 to +60
specs = specs.Walk(func(spec *et.ExtensionTestSpec) {
spec.Name = spec.Name + " using OTE"
})
Copy link
Member Author

Choose a reason for hiding this comment

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

Remove, was just added to flag the test and show on openshift/origin execution

@rikatz
Copy link
Member Author

rikatz commented Sep 26, 2025

One extra step to validate: once this is merged, we can add the ext tests as an additional suite: https://github.com/openshift/operator-framework-operator-controller/tree/main/openshift/tests-extension#e2e-test-configuration

This should be carefully considered as it can add some extra burden on the e2e (a new environment creation), or we can check with OTE team if we can append these tests to our own already existing e2e tests

Also we need to add some extra validation steps for the generated metadata, eg: https://github.com/openshift/release/blob/6fa0aed23caebc291168b2ef829832ba5f1d4b2b/ci-operator/config/openshift/operator-framework-operator-controller/openshift-operator-framework-operator-controller-main.yaml#L169C1-L178C29

"github.com/openshift/cluster-ingress-operator/test/extended/framework"
)

var _ = g.Describe("[sig-network][OCPFeatureGate:GatewayAPI][Feature:Router][apigroup:gateway.networking.k8s.io]", func() {
Copy link
Contributor

@lihongan lihongan Sep 29, 2025

Choose a reason for hiding this comment

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

Suggested change
var _ = g.Describe("[sig-network][OCPFeatureGate:GatewayAPI][Feature:Router][apigroup:gateway.networking.k8s.io]", func() {
var _ = g.Describe("[sig-network-edge][OCPFeatureGate:GatewayAPI][Feature:Router][apigroup:gateway.networking.k8s.io]", func() {

Better to keep consistent with the "GatewayAPIController" tests.
I used wrong tag when adding tests to Origin repo before.

The test files contained on this directory will be executed as part of openshift/origin
extended tests.

Some of the tests on this directory were originally migrated from openshift/origin/test/extended/router
Copy link
Contributor

Choose a reason for hiding this comment

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

QE also want to migrate tests from openshift/openshift-tests-private/test/extended/router to component repo, could we migrate to this specs directory ?

Copy link
Contributor

openshift-ci bot commented Oct 3, 2025

@rikatz: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/e2e-aws-ovn-serial 9d664d3 link true /test e2e-aws-ovn-serial
ci/prow/okd-scos-e2e-aws-ovn 9d664d3 link false /test okd-scos-e2e-aws-ovn
ci/prow/e2e-aws-ovn-single-node 9d664d3 link false /test e2e-aws-ovn-single-node
ci/prow/e2e-gcp-ovn 9d664d3 link false /test e2e-gcp-ovn
ci/prow/e2e-hypershift 9d664d3 link true /test e2e-hypershift
ci/prow/e2e-aws-ovn-upgrade 9d664d3 link true /test e2e-aws-ovn-upgrade
ci/prow/e2e-aws-ovn 9d664d3 link true /test e2e-aws-ovn
ci/prow/e2e-aws-ovn-serial-2of2 9d664d3 link true /test e2e-aws-ovn-serial-2of2

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants