Skip to content

OCPBUGS-114882: drop GCD health-check ranges in openshift-gcp-routes - #6501

Open
patrickdillon wants to merge 3 commits into
openshift:mainfrom
patrickdillon:gcd-health-probe
Open

OCPBUGS-114882: drop GCD health-check ranges in openshift-gcp-routes#6501
patrickdillon wants to merge 3 commits into
openshift:mainfrom
patrickdillon:gcd-health-probe

Conversation

@patrickdillon

@patrickdillon patrickdillon commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

- What I did
Updated the pattern introduced by the bug fixes for https://bugzilla.redhat.com/show_bug.cgi?id=1925698 and https://bugzilla.redhat.com/show_bug.cgi?id=1930457 to take into account the health probe ranges for GCD sovereign regions.

- How to verify it
We have gcd e2e jobs, and I will kick one off, but I'm not certain the file in question would be gathered in CI artifacts. If not, I will manually verify (and update here of course).

- Description for the changelog

Include GCD health-check probe ranges in openshift-gcp-routes.

Summary by CodeRabbit

  • New Features

    • Added support for region-specific GCP health-check source ranges, including GCD Berlin and France deployments.
    • Added fallback support for standard public GCP health-check ranges when regional platform information is unavailable.
  • Bug Fixes

    • Updated network filtering rules to allow health-check traffic from the appropriate ranges across supported GCP environments.
    • Improved health-check compatibility for sovereign cloud regions.

openshift-gcp-routes drops load balancer health-check probes that would be
forwarded off-node, to avoid polluting conntrack (BZ 1925698, 1930457). The
dropped source ranges were hardcoded to the public GCP prober ranges
(35.191.0.0/16, 130.211.0.0/22). GCD (sovereign) regions probe from different
ranges which need to be added to avoid the issue seen on public GCP.

Select the dropped ranges by region via a new gcpHealthCheckSourceRanges
template function: GCD regions drop their own region's prober ranges, all other
regions keep the public GCP behavior. Only ranges reserved for health-check
probers in the target environment are dropped -- a range that is reserved prober
infrastructure in one environment is ordinary routable space in another, so the
ranges must not be dropped unconditionally.
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

Pipeline controller notification
This repo is configured to use the pipeline controller. Second-stage tests will be triggered either automatically or after lgtm label is added, depending on the repository configuration. The pipeline controller will automatically detect which contexts are required and will utilize /test Prow commands to trigger the second stage.

For optional jobs, comment /test ? to see a list of all defined jobs. To trigger manually all jobs from second stage use /pipeline required command.

This repository is configured in: LGTM mode

@openshift-ci-robot openshift-ci-robot added jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. jira/valid-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. labels Sep 4, 2026
@openshift-ci-robot

Copy link
Copy Markdown
Contributor

@patrickdillon: This pull request references Jira Issue OCPBUGS-114882, which is valid. The bug has been moved to the POST state.

3 validation(s) were run on this bug
  • bug is open, matching expected state (open)
  • bug target version (5.1.0) matches configured target version for branch (5.1.0)
  • bug is in the state ASSIGNED, which is one of the valid states (NEW, ASSIGNED, POST)

The bug has been updated to refer to the pull request using the external bug tracker.

Details

In response to this:

- What I did
Updated the pattern introduced by the bug fixes for https://bugzilla.redhat.com/show_bug.cgi?id=1925698 and https://bugzilla.redhat.com/show_bug.cgi?id=1930457 to take into account the health probe ranges for GCD sovereign regions.

- How to verify it
We have gcd e2e jobs, and I will kick one off, but I'm not certain the file in question would be gathered in CI artifacts. If not, I will manually verify (and update here of course).

- Description for the changelog

Include GCD health-check probe ranges in openshift-gcp-routes.

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

coderabbitai Bot commented Sep 4, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 7cd03318-7ed3-46c6-9598-4af81c7b8aba

📥 Commits

Reviewing files that changed from the base of the PR and between 3dc97ea and 5acd9d6.

⛔ Files ignored due to path filters (55)
  • go.sum is excluded by !**/*.sum
  • vendor/github.com/openshift/api/config/v1/types.go is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/config/v1/types_cluster_image_policy.go is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/config/v1/types_image_policy.go is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/config/v1/types_infrastructure.go is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_clusterimagepolicies.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_imagepolicies.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-Default.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-Hypershift-CustomNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-Hypershift-DevPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-OKD.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-SelfManagedHA-CustomNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-SelfManagedHA-DevPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-TechPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/config/v1/zz_generated.featuregated-crd-manifests.yaml is excluded by !**/vendor/**, !vendor/**, !**/zz_generated*
  • vendor/github.com/openshift/api/config/v1/zz_generated.swagger_doc_generated.go is excluded by !**/vendor/**, !vendor/**, !**/zz_generated*
  • vendor/github.com/openshift/api/features.md is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/features/features.go is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/features/legacyfeaturegates.go is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machine/v1beta1/types_vsphereprovider.go is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/types.go is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_containerruntimeconfigs-CustomNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_containerruntimeconfigs-Default.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_containerruntimeconfigs-DevPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_containerruntimeconfigs-OKD.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_containerruntimeconfigs-TechPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-Default.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-Hypershift-CustomNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-Hypershift-DevPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-OKD.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-SelfManagedHA-CustomNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-SelfManagedHA-DevPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-TechPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_kubeletconfigs-CustomNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_kubeletconfigs-DevPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_kubeletconfigs-TechPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.featuregated-crd-manifests.yaml is excluded by !**/vendor/**, !vendor/**, !**/zz_generated*
  • vendor/github.com/openshift/api/machineconfiguration/v1/zz_generated.swagger_doc_generated.go is excluded by !**/vendor/**, !vendor/**, !**/zz_generated*
  • vendor/github.com/openshift/api/operator/v1/types_ingresscontroller.go is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/operator/v1/types_machineconfiguration.go is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_50_ingress_00_ingresscontrollers-CustomNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_50_ingress_00_ingresscontrollers-DevPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_50_ingress_00_ingresscontrollers-TechPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_80_machine-config_01_machineconfigurations-CustomNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_80_machine-config_01_machineconfigurations-Default.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_80_machine-config_01_machineconfigurations-DevPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_80_machine-config_01_machineconfigurations-OKD.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.crd-manifests/0000_80_machine-config_01_machineconfigurations-TechPreviewNoUpgrade.crd.yaml is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/operator/v1/zz_generated.deepcopy.go is excluded by !**/vendor/**, !vendor/**, !**/zz_generated*
  • vendor/github.com/openshift/api/operator/v1/zz_generated.featuregated-crd-manifests.yaml is excluded by !**/vendor/**, !vendor/**, !**/zz_generated*
  • vendor/github.com/openshift/api/operator/v1/zz_generated.swagger_doc_generated.go is excluded by !**/vendor/**, !vendor/**, !**/zz_generated*
  • vendor/github.com/openshift/api/operatorcontrolplane/v1alpha1/types_conditioncheck.go is excluded by !**/vendor/**, !vendor/**
  • vendor/github.com/openshift/api/operatorcontrolplane/v1alpha1/zz_generated.featuregated-crd-manifests.yaml is excluded by !**/vendor/**, !vendor/**, !**/zz_generated*
  • vendor/github.com/openshift/api/payload-command/render/legacyfeaturegates.go is excluded by !**/vendor/**, !vendor/**
  • vendor/modules.txt is excluded by !**/vendor/**, !vendor/**
📒 Files selected for processing (1)
  • go.mod

Included review availability: Your plan provides up to 12 included reviews per hour; 10 remain after this review.


Walkthrough

The change adds region-specific GCP health-check source ranges, exposes the selector to templates, and renders nftables rules for each selected range.

Changes

GCP health-check range handling

Layer / File(s) Summary
Region-aware range selection and validation
pkg/controller/template/gcp_healthchecks.go, pkg/controller/template/gcp_healthchecks_test.go, go.mod
The selector returns public GCP ranges by default and GCD ranges for the supported Germany and France regions. Tests cover regional selection and fallback behavior. The github.com/openshift/api dependency is updated.
Template rule rendering
pkg/controller/template/render.go, templates/master/00-master/gcp/files/opt-libexec-openshift-gcp-routes-sh.yaml
renderTemplate exposes the selector. The nftables template creates a source-drop rule for each returned range.

Priority: ⬇️ Low

Estimated code review effort: 3 (Moderate) | ~20 minutes

Merge Risk: ⚪ Minimal · up to 5acd9

The change is mergeable with normal checks; no actionable regression is identified.

🚥 Pre-merge checks | ✅ 14 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 66.67% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 3 functions across 3 files. (1 skipped: 1… Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (14 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the main change: adding GCD health-check ranges to openshift-gcp-routes. It is concise and specific.
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.
Stable And Deterministic Test Names ✅ Passed The pull request adds a standard Go test, not a Ginkgo test. Its t.Run names are literal strings: public region uses public GCP ranges, gcd berlin uses its own region ranges, `gcd france uses it…
Test Structure And Quality ✅ Passed The custom check targets Ginkgo test code, but this pull request adds a standard-library table-driven Go test (TestGCPHealthCheckSourceRanges), not Ginkgo It blocks. The test has no cluster resour…
Microshift Test Compatibility ✅ Passed PASS: The pull request adds one test, TestGCPHealthCheckSourceRanges, using Go's standard testing package and t.Run. It does not add Ginkgo e2e constructs such as It, Describe, Context, or…
Single Node Openshift (Sno) Test Compatibility ✅ Passed The pull request adds one test file, pkg/controller/template/gcp_healthchecks_test.go. It uses Go testing.T and t.Run, not Ginkgo e2e constructs such as It, Describe, Context, or When. T…
Topology-Aware Scheduling Compatibility ✅ Passed PASS: The pull request does not introduce a topology-related scheduling constraint. The functional changes add GCP health-check CIDR selection and render nftables drop rules in a master MachineConfig …
Ote Binary Stdout Contract ✅ Passed The pull request does not add stdout writes in OTE process-level code. The added Go code contains only range data, a pure selector, a template-function registration, and unit-test assertions. The chan…
Ipv6 And Disconnected Network Test Compatibility ✅ Passed The pull request adds only a standard Go unit test, TestGCPHealthCheckSourceRanges(t *testing.T). It adds no Ginkgo e2e test (It, Describe, Context, or When) and performs no network or exter…
No-Weak-Crypto ✅ Passed The pull request adds GCP health-check CIDR selection and template rendering only. Added-line searches found no MD5, SHA1, DES, 3DES, RC4, Blowfish, ECB, cryptographic API, custom crypto, or secret/to…
Container-Privileges ✅ Passed No prohibited container privilege setting was introduced. The authoritative diff adds no privileged, hostPID, hostNetwork, hostIPC, SYS_ADMIN, or allowPrivilegeEscalation setting. The chan…
No-Sensitive-Data-In-Logs ✅ Passed PASS. The pull request adds GCP health-check CIDR ranges, template iteration, and unit tests. It adds no logging calls and does not add passwords, tokens, API keys, PII, session IDs, hostnames, or cus…
Full details: Docstring Coverage

Explanation

Docstring coverage is 66.67% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 3 functions across 3 files. (1 skipped: 1 unsupported.)

  • Fix all pre-merge checks with AI
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@openshift-ci-robot

Copy link
Copy Markdown
Contributor

@patrickdillon: This pull request references Jira Issue OCPBUGS-114882, which is valid.

3 validation(s) were run on this bug
  • bug is open, matching expected state (open)
  • bug target version (5.1.0) matches configured target version for branch (5.1.0)
  • bug is in the state POST, which is one of the valid states (NEW, ASSIGNED, POST)
Details

In response to this:

- What I did
Updated the pattern introduced by the bug fixes for https://bugzilla.redhat.com/show_bug.cgi?id=1925698 and https://bugzilla.redhat.com/show_bug.cgi?id=1930457 to take into account the health probe ranges for GCD sovereign regions.

- How to verify it
We have gcd e2e jobs, and I will kick one off, but I'm not certain the file in question would be gathered in CI artifacts. If not, I will manually verify (and update here of course).

- Description for the changelog

Include GCD health-check probe ranges in openshift-gcp-routes.

Summary by CodeRabbit

  • New Features
  • Improved GCP health-check traffic handling by supporting region-specific source ranges, including GCD Berlin and France deployments.
  • Added fallback support for standard public GCP health-check ranges when regional platform information is unavailable.
  • Bug Fixes
  • Updated network rules to allow health checks from the appropriate ranges for supported GCP environments.

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.

@patrickdillon

Copy link
Copy Markdown
Contributor Author

/payload-job periodic-ci-openshift-release-main-ci-5.1-e2e-gcd-ovn

@openshift-ci

openshift-ci Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

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

  • periodic-ci-openshift-release-main-ci-5.1-e2e-gcd-ovn

See details on https://pr-payload-tests.ci.openshift.org/runs/ci/6f8dfd30-a85c-11f1-813b-44d8bf3c86c6-0

@patrickdillon

Copy link
Copy Markdown
Contributor Author

/test unit

unrelated failure looks like a flake

@patrickdillon

Copy link
Copy Markdown
Contributor Author

/payload-job periodic-ci-openshift-release-main-ci-5.1-e2e-gcd-ovn

@openshift-ci

openshift-ci Bot commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

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

  • periodic-ci-openshift-release-main-ci-5.1-e2e-gcd-ovn

See details on https://pr-payload-tests.ci.openshift.org/runs/ci/188a0340-a928-11f1-9980-69e9442188d8-0

@yuqi-zhang yuqi-zhang 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.

Logic itself seems fine to me, a couple of questions inline on the details

Both test runs failed with

ERROR: gcloud crashed (ConnectionError): HTTPSConnectionPool(host='compute.apis-berlin-build0.goog', port=443): Max retries exceeded with url: /compute/v1/projects/eu0%3Aopenshift/regions/u-germany-northeast1?alt=json (Caused by NameResolutionError("HTTPSConnection(host='compute.apis-berlin-build0.goog', port=443): Failed to resolve 'compute.apis-berlin-build0.goog' ([Errno -2] Name or service not known)"))

it looks like. Is that a test configuration issue?

"34.3.144.0/23",
"34.3.151.0/26",
"34.3.151.64/26",
"136.124.104.0/22",

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.

This and the following entry are listed for both germany and france, are they actually regional? Or global? (Doesn't affect the implementation I think but just curious)

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.

Hm yes apparently both of these ranges are included in both S3NS france docs and the berlin region, the docs for which are not publicy available.

These are both for external passthrough load balancers so, yes they are global, although distinct from the gcp ranges.


// gcpHealthCheckSourceRanges returns the health-check prober source ranges to
// drop for the cluster's region. Only GCD regions have specific ranges.
func gcpHealthCheckSourceRanges(cfg RenderConfig) []string {

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.

Does https://github.com/openshift/api/blob/6733660e6ece5593234b36fd21327c4c8ec96db2/config/v1/types_infrastructure.go#L854 UniverseDomain intersect with this at all? Also I noticed that in the MCO vendored code, the featuregate for soverign cloud on GCP https://github.com/openshift/machine-config-operator/blob/main/vendor/github.com/openshift/api/features/features.go#L880 is still dev preview. Do you need a vendor bump?

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.

Does https://github.com/openshift/api/blob/6733660e6ece5593234b36fd21327c4c8ec96db2/config/v1/types_infrastructure.go#L854 UniverseDomain intersect with this at all?

Yes, it does intersect, in the sense that these GCD sovereign cloud regions have alternate universe domains. Most of the implementation for this feature has been updating clients to use an alternate universe domain when talking to GCD.

I'm not sure how strict the coupling is between GCD and alternate universe domains, it seems possible there will be uses of alternate universe domains separate from GCD.

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.

Also I noticed that in the MCO vendored code, the featuregate for soverign cloud on GCP https://github.com/openshift/machine-config-operator/blob/main/vendor/github.com/openshift/api/features/features.go#L880 is still dev preview. Do you need a vendor bump?

Maybe? I have not used feature gates in MCO before, and I wasn't aware it needed to be explicitly vendored in to be updated (the installer is like that too, but most components AFAIK do not need vendoring...)

On the other hand, nothing in the code is currently gated and the gated API field is not being used in this case, so it doesn't seem strictly necessary. That said, it seems like a good idea to have it up to date, so I can include a bump here.

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.

Bumped openshift/api for good measure

@patrickdillon

Copy link
Copy Markdown
Contributor Author

/payload-job periodic-ci-openshift-release-main-ci-5.1-e2e-gcd-ovn

@openshift-ci

openshift-ci Bot commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

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

  • periodic-ci-openshift-release-main-ci-5.1-e2e-gcd-ovn

See details on https://pr-payload-tests.ci.openshift.org/runs/ci/cf9eedf0-adf8-11f1-8e40-8f7809ae87d5-0

@patrickdillon

Copy link
Copy Markdown
Contributor Author

oops I screwed up the vendoring. I mistakenly pulled in release-5.0 when we need 5.1/main

go get github.com/openshift/api@master && go mod tidy
go mod vendor

To pull in GCD feature gate in default feature set.
@patrickdillon

Copy link
Copy Markdown
Contributor Author

ok vendoring is fixed up now.

@patrickdillon

Copy link
Copy Markdown
Contributor Author

it looks like. Is that a test configuration issue?

I'm rerunning the test, I think it's along those lines, but the issue is more on the build cluster side. It looks related to the build04 cluster issues we're seeing in this bug/incident: https://redhat.atlassian.net/browse/OCPBUGS-105502

@yuqi-zhang yuqi-zhang 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

Leaving an approval from the MCO side, thanks for addressing the questions. Would like to see a green run and/or some other way to validate the actual implementation, but logically should be safe to merge

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Sep 11, 2026
@openshift-ci

openshift-ci Bot commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

Scheduling tests matching the pipeline_run_if_changed or not excluded by pipeline_skip_if_only_changed parameters:
/test e2e-aws-ovn
/test e2e-aws-ovn-upgrade
/test e2e-gcp-op-ocl-part1
/test e2e-gcp-op-ocl-part2
/test e2e-gcp-op-part1
/test e2e-gcp-op-part2
/test e2e-gcp-op-single-node
/test e2e-hypershift
/test tls-pqc-readiness

@openshift-ci

openshift-ci Bot commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: patrickdillon, yuqi-zhang

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 Sep 11, 2026
@openshift-ci

openshift-ci Bot commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

@patrickdillon: 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/unit 5acd9d6 link true /test unit
ci/prow/verify-deps 5acd9d6 link true /test verify-deps
ci/prow/perfscale-control-plane-6nodes 5acd9d6 link false /test perfscale-control-plane-6nodes

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-bug Indicates that a referenced Jira bug is valid for the branch this PR is targeting. 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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants