Skip to content

[CRDB-53890] helm: setup the infra on the openshift to run single and multi region tests#607

Open
shreyaskm623 wants to merge 1 commit intomasterfrom
shreyaskm/openshfit-advanced-e2e
Open

[CRDB-53890] helm: setup the infra on the openshift to run single and multi region tests#607
shreyaskm623 wants to merge 1 commit intomasterfrom
shreyaskm/openshfit-advanced-e2e

Conversation

@shreyaskm623
Copy link
Copy Markdown
Contributor

@shreyaskm623 shreyaskm623 commented Mar 12, 2026

Adds OpenShift as a supported cloud provider in the e2e operator test framework,
enabling the full operator test suite to run on OpenShift clusters provisioned
on GCP via openshift-install, for both single-region and multi-region setups.

JIRA: https://cockroachlabs.atlassian.net/browse/CRDB-53890

TODO:

  • Change defaultOpenShiftProjectID from "cockroach-shreyaskm" to "helm-testing" in openshift.go to match the GCP provider default and avoid accidental provisioning into a personal project when GCP_PROJECT_ID is unset.

@shreyaskm623 shreyaskm623 self-assigned this Mar 12, 2026
@shreyaskm623 shreyaskm623 changed the title helm: Openshift single / multi region test infra setup helm: openshift single and multi region test infra setup Mar 13, 2026
@shreyaskm623 shreyaskm623 changed the title helm: openshift single and multi region test infra setup helm: setup the infra on the openshift to run single and multi region tests Mar 16, 2026
@shreyaskm623 shreyaskm623 changed the title helm: setup the infra on the openshift to run single and multi region tests [CRDB-53971] helm: setup the infra on the openshift to run single and multi region tests Mar 16, 2026
@shreyaskm623 shreyaskm623 force-pushed the shreyaskm/openshfit-advanced-e2e branch 2 times, most recently from 2c22c43 to f9a78e9 Compare March 16, 2026 07:00
@NishanthNalluri NishanthNalluri requested a review from Copilot March 16, 2026 08:46
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds OpenShift as a supported provider in the operator e2e test framework, aiming to run the single-region and multi-region operator test suites on OpenShift clusters provisioned on GCP via openshift-install.

Changes:

  • Introduces an openshift infra provider (OpenShiftRegion) and wires it into provider selection/factory.
  • Adds OpenShift-specific e2e behaviors (SCC bindings, Helm uninstall flags, storage class / cluster domain overrides, cleanup hardening).
  • Adjusts operator installation to allow overriding cloudRegion to satisfy operator webhook validation.

Reviewed changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
tests/testutil/cert-manager.go Makes bundle cleanup more defensive (ignore missing file/resources).
tests/e2e/operator/singleRegion/cockroachdb_single_region_e2e_test.go Adds OpenShift provider option and improves cleanup for OpenShift constraints.
tests/e2e/operator/region.go Adds OpenShift-specific install/cleanup logic and operator install cloudRegion override support.
tests/e2e/operator/multiRegion/cockroachdb_multi_region_e2e_test.go Adds OpenShift provider option for multi-region suite.
tests/e2e/operator/infra/common.go Registers ProviderOpenShift and its region codes/annotations defaults.
tests/e2e/operator/infra/provider.go Extends ProviderFactory to construct OpenShiftRegion.
tests/e2e/operator/infra/openshift.go New provider implementation using openshift-install, kubeconfig merge, DNS operator patching, and teardown.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread tests/e2e/operator/multiRegion/cockroachdb_multi_region_e2e_test.go
Comment thread tests/e2e/operator/infra/openshift.go
Comment thread tests/e2e/operator/infra/openshift.go
Comment thread tests/e2e/operator/infra/openshift.go
Comment thread tests/e2e/operator/infra/openshift.go Outdated
Comment thread tests/e2e/operator/infra/openshift.go Outdated
Comment thread tests/e2e/operator/region.go Outdated
Comment thread tests/e2e/operator/region.go
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds OpenShift as a supported cloud provider in the operator e2e infra framework so the existing single-region and multi-region operator Helm test suites can run against OpenShift clusters provisioned on GCP via openshift-install.

Changes:

  • Add a new openshift infra provider (provisioning/reuse, VPC peering, CoreDNS, DNS operator patching, autoscaler, Submariner for multi-region).
  • Update operator tests and chart install/cleanup flow to support OpenShift specifics (SCC bindings, hook handling, storage class, region/provider semantics).
  • Adjust e2e cleanup utilities and increase multi-region test timeout.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 11 comments.

Show a summary per file
File Description
tests/testutil/cert-manager.go Makes bundle deletion best-effort and avoids failing cleanup when the manifest file is missing.
tests/e2e/operator/singleRegion/cockroachdb_single_region_e2e_test.go Adds openshift provider option and OpenShift-specific cleanup; currently disables infra teardown.
tests/e2e/operator/region.go Adds OpenShift SCC bindings, OpenShift Helm/delete behavior adjustments, and operator cloudRegion override support.
tests/e2e/operator/multiRegion/cockroachdb_multi_region_e2e_test.go Adds openshift provider option for multi-region runs.
tests/e2e/operator/infra/provider.go Wires ProviderOpenShift into the provider factory.
tests/e2e/operator/infra/openshift.go New OpenShift infra implementation (install/reuse, peering, CoreDNS, DNS, autoscaler, Submariner, kubeconfig merge).
tests/e2e/operator/infra/common.go Adds ProviderOpenShift and OpenShift-specific CoreDNS internal service support.
tests/e2e/coredns/coredns.go Adds a ClusterIP CoreDNS service for UDP+TCP/53 and extends cluster option struct.
Makefile Increases multi-region test timeout from 60m to 300m.
broker-info.subm Adds a Submariner broker info artifact (contains credentials).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread broker-info.subm Outdated
Comment thread tests/e2e/operator/infra/openshift.go
Comment thread tests/e2e/operator/singleRegion/cockroachdb_single_region_e2e_test.go Outdated
Comment thread tests/e2e/operator/singleRegion/cockroachdb_single_region_e2e_test.go Outdated
Comment thread tests/e2e/operator/infra/openshift.go Outdated
Comment thread tests/e2e/operator/region.go Outdated
Comment thread Makefile Outdated
Comment thread tests/e2e/operator/infra/openshift.go Outdated
Comment thread tests/e2e/operator/infra/openshift.go
Comment thread tests/e2e/coredns/coredns.go Outdated
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 9 out of 10 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread tests/e2e/operator/infra/openshift.go
Comment thread tests/e2e/operator/infra/openshift.go Outdated
Comment thread tests/e2e/operator/infra/openshift.go Outdated
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 9 out of 10 changed files in this pull request and generated 3 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread tests/e2e/operator/infra/openshift.go Outdated
Comment thread tests/e2e/operator/infra/openshift.go
Comment thread tests/testutil/cert-manager.go Outdated
@shreyaskm623 shreyaskm623 force-pushed the shreyaskm/openshfit-advanced-e2e branch from ed2ee7f to d8ac9f0 Compare April 9, 2026 02:49
… operator tests

Adds OpenShift as a supported cloud provider in the e2e operator test framework,
enabling the full operator test suite to run on OpenShift clusters provisioned
on GCP via openshift-install, for both single-region and multi-region setups.
@shreyaskm623 shreyaskm623 force-pushed the shreyaskm/openshfit-advanced-e2e branch from d8ac9f0 to a8bf0b7 Compare April 9, 2026 03:13
@shreyaskm623 shreyaskm623 marked this pull request as ready for review April 9, 2026 03:18
@shreyaskm623 shreyaskm623 changed the title [CRDB-53971] helm: setup the infra on the openshift to run single and multi region tests [CRDB-53890] helm: setup the infra on the openshift to run single and multi region tests Apr 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants