CORS-4281: Remove the GCP Service Endpoints#2576
CORS-4281: Remove the GCP Service Endpoints#2576openshift-merge-bot[bot] merged 1 commit intoopenshift:masterfrom
Conversation
|
Pipeline controller notification For optional jobs, comment |
|
@barbacbd: This pull request references CORS-4281 which is a valid jira issue. DetailsIn response to this:
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. |
|
Hello @barbacbd! Some important instructions when contributing to openshift/api: |
|
@barbacbd verify jobs are failing, might be worth rebasing and checking what's wrong |
|
Scheduling tests matching the |
WalkthroughThis pull request removes GCP custom API endpoints functionality from infrastructure and machine configuration APIs, including type definitions, CRD schema fields, test suites, and generated supporting code across multiple API versions and deployment modes. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 minutes
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro Cache: Disabled due to data retention organization setting Knowledge base: Disabled due to 📒 Files selected for processing (22)
💤 Files with no reviewable changes (20)
🚧 Files skipped from review as they are similar to previous changes (1)
🧰 Additional context used📓 Path-based instructions (1)**⚙️ CodeRabbit configuration file
Files:
🔇 Additional comments (2)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 golangci-lint (2.5.0)Error: build linters: unable to load custom analyzer "kubeapilinter": tools/_output/bin/kube-api-linter.so, plugin: not implemented Comment |
|
/lgtm @everettraven are the CRD verifications failures expected? TY |
|
Scheduling tests matching the |
|
@damdo @barbacbd Both That being said, |
There was a problem hiding this comment.
Actionable comments posted: 0
🧹 Nitpick comments (1)
config/v1/types_infrastructure.go (1)
756-770: TombstonedserviceEndpointslooks good; consider disabling the remaining kubebuilder/feature-gate markersThe approach of commenting out the
ServiceEndpointsfield and adding a tombstone comment is consistent with the earlierClusterHostedDNStombstone and clearly reserves the JSON field name.However, all of the schema/feature-gate markers immediately below (the
+listType,+listMapKey,+kubebuilder:validation:*, and+openshift:enable:FeatureGate=GCPCustomAPIEndpointsInstalllines) are still active markers even though there is no longer a field. That can:
- Mislead future readers into thinking
serviceEndpointsis still part of the active schema.- Potentially confuse code-generation/validation tooling, since these markers are intended to be field-scoped.
I'd recommend either deleting those marker lines or “hard-commenting” them so they are no longer parsed as markers (e.g. prefix with an extra
/), while keeping the explanatory tombstone comments and the commented-out field name.For example:
-// +listType=map -// +listMapKey=name -// +kubebuilder:validation:MaxItems=11 -// +kubebuilder:validation:XValidation:rule="self.all(x, self.exists_one(y, x.name == y.name))",message="only 1 endpoint override is permitted per GCP service name" -// +optional -// +openshift:enable:FeatureGate=GCPCustomAPIEndpointsInstall -// ServiceEndpoints []GCPServiceEndpoint `json:"serviceEndpoints,omitempty"` +//// +listType=map +//// +listMapKey=name +//// +kubebuilder:validation:MaxItems=11 +//// +kubebuilder:validation:XValidation:rule="self.all(x, self.exists_one(y, x.name == y.name))",message="only 1 endpoint override is permitted per GCP service name" +//// +optional +//// +openshift:enable:FeatureGate=GCPCustomAPIEndpointsInstall +//// ServiceEndpoints []GCPServiceEndpoint `json:"serviceEndpoints,omitempty"`This keeps the historical context while ensuring no stray markers affect CRD/OpenAPI/feature-gate generation.
Please re-run
make updateand theverify-crd-schema/verify-crdify/verifyjobs after such a change to confirm all generators still pass cleanly.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Cache: Disabled due to data retention organization setting
Knowledge base: Disabled due to Reviews -> Disable Knowledge Base setting
📒 Files selected for processing (22)
config/v1/tests/infrastructures.config.openshift.io/GCPCustomAPIEndpoints.yaml(0 hunks)config/v1/tests/infrastructures.config.openshift.io/GCPCustomAPIEndpointsInstall.yaml(0 hunks)config/v1/types_infrastructure.go(1 hunks)config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-CustomNoUpgrade.crd.yaml(0 hunks)config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-DevPreviewNoUpgrade.crd.yaml(0 hunks)config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-TechPreviewNoUpgrade.crd.yaml(0 hunks)config/v1/zz_generated.deepcopy.go(0 hunks)config/v1/zz_generated.featuregated-crd-manifests.yaml(0 hunks)config/v1/zz_generated.swagger_doc_generated.go(0 hunks)machineconfiguration/v1/tests/controllerconfigs.machineconfiguration.openshift.io/GCPCustomAPIEndpoints.yaml(0 hunks)machineconfiguration/v1/tests/controllerconfigs.machineconfiguration.openshift.io/GCPCustomAPIEndpointsInstall.yaml(0 hunks)machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-CustomNoUpgrade.crd.yaml(0 hunks)machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-DevPreviewNoUpgrade.crd.yaml(0 hunks)machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-TechPreviewNoUpgrade.crd.yaml(0 hunks)machineconfiguration/v1/zz_generated.featuregated-crd-manifests.yaml(0 hunks)openapi/generated_openapi/zz_generated.openapi.go(1 hunks)payload-manifests/crds/0000_10_config-operator_01_infrastructures-CustomNoUpgrade.crd.yaml(0 hunks)payload-manifests/crds/0000_10_config-operator_01_infrastructures-DevPreviewNoUpgrade.crd.yaml(0 hunks)payload-manifests/crds/0000_10_config-operator_01_infrastructures-TechPreviewNoUpgrade.crd.yaml(0 hunks)payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-CustomNoUpgrade.crd.yaml(0 hunks)payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-DevPreviewNoUpgrade.crd.yaml(0 hunks)payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-TechPreviewNoUpgrade.crd.yaml(0 hunks)
💤 Files with no reviewable changes (20)
- config/v1/zz_generated.swagger_doc_generated.go
- config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-CustomNoUpgrade.crd.yaml
- config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-TechPreviewNoUpgrade.crd.yaml
- machineconfiguration/v1/tests/controllerconfigs.machineconfiguration.openshift.io/GCPCustomAPIEndpointsInstall.yaml
- machineconfiguration/v1/tests/controllerconfigs.machineconfiguration.openshift.io/GCPCustomAPIEndpoints.yaml
- machineconfiguration/v1/zz_generated.featuregated-crd-manifests.yaml
- payload-manifests/crds/0000_10_config-operator_01_infrastructures-CustomNoUpgrade.crd.yaml
- config/v1/zz_generated.deepcopy.go
- config/v1/tests/infrastructures.config.openshift.io/GCPCustomAPIEndpointsInstall.yaml
- payload-manifests/crds/0000_10_config-operator_01_infrastructures-TechPreviewNoUpgrade.crd.yaml
- machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-DevPreviewNoUpgrade.crd.yaml
- payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-TechPreviewNoUpgrade.crd.yaml
- payload-manifests/crds/0000_10_config-operator_01_infrastructures-DevPreviewNoUpgrade.crd.yaml
- config/v1/zz_generated.featuregated-crd-manifests.yaml
- machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-CustomNoUpgrade.crd.yaml
- payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-DevPreviewNoUpgrade.crd.yaml
- payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-CustomNoUpgrade.crd.yaml
- config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-DevPreviewNoUpgrade.crd.yaml
- config/v1/tests/infrastructures.config.openshift.io/GCPCustomAPIEndpoints.yaml
- machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-TechPreviewNoUpgrade.crd.yaml
🧰 Additional context used
📓 Path-based instructions (1)
**
⚙️ CodeRabbit configuration file
-Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity.
Files:
openapi/generated_openapi/zz_generated.openapi.goconfig/v1/types_infrastructure.go
🔇 Additional comments (1)
openapi/generated_openapi/zz_generated.openapi.go (1)
12930-12940: LGTM - Generated code correctly reflects GCPServiceEndpoint removal.The Dependencies array correctly omits the removed GCPServiceEndpoint type, leaving only the three remaining GCP-related types. Since this is generated code (
zz_generatedprefix), ensure the generators have been run completely viamake updateas mentioned in the PR discussion.
|
/hold @barbacbd and I had agreed that these should stay to follow our newer patterns for populating CCM configuration. Would like to catch up on what's changed before we move forward here |
We determined that CCM configuration is not needed for this feature. All GCP API resolution in the cluster is redirected to the private endpoint by installer-created DNS records. Fun fact, the DNS solution is actually the only way this will work for OpenShift, we learned, because overriding the endpoints does not support certain APIs ( Nothing in OpenShift should be using the API defined here.
I gathered some loose details on the CCM configuration pattern; it sounded like the installer should not be laying down CCM configuration, which was new to me. We should discuss to better establish expectations and motivations. |
| // GCPServiceEndpoint store the configuration of a custom url to | ||
| // override existing defaults of GCP Services. | ||
| type GCPServiceEndpoint struct { | ||
| // name is the name of the GCP service whose endpoint is being overridden. | ||
| // This must be provided and cannot be empty. | ||
| // | ||
| // Allowed values are Compute, Container, CloudResourceManager, DNS, File, IAM, ServiceUsage, | ||
| // Storage, and TagManager. | ||
| // | ||
| // As an example, when setting the name to Compute all requests made by the caller to the GCP Compute | ||
| // Service will be directed to the endpoint specified in the url field. | ||
| // | ||
| // +required | ||
| Name GCPServiceEndpointName `json:"name"` | ||
|
|
||
| // url is a fully qualified URI that overrides the default endpoint for a client using the GCP service specified | ||
| // in the name field. | ||
| // url is required, must use the scheme https, must not be more than 253 characters in length, | ||
| // and must be a valid URL according to Go's net/url package (https://pkg.go.dev/net/url#URL) | ||
| // | ||
| // An example of a valid endpoint that overrides the Compute Service: "https://compute-myendpoint1.p.googleapis.com" | ||
| // | ||
| // +required | ||
| // +kubebuilder:validation:MaxLength=253 | ||
| // +kubebuilder:validation:XValidation:rule="isURL(self)",message="must be a valid URL" | ||
| // +kubebuilder:validation:XValidation:rule="isURL(self) ? (url(self).getScheme() == \"https\") : true",message="scheme must be https" | ||
| // +kubebuilder:validation:XValidation:rule="url(self).getEscapedPath() == \"\" || url(self).getEscapedPath() == \"/\"",message="url must consist only of a scheme and domain. The url path must be empty." | ||
| URL string `json:"url"` | ||
| } | ||
|
|
There was a problem hiding this comment.
We need to know what this looked like to have the complete tombstone, so this should be commented rather than removed, same for the string alias, I'm happy to remove the constants though
There was a problem hiding this comment.
Using this as a learning opportunity for tombstoning:
Does it matter what the underlying field structure looked like if we can never add a field with the parent serialized name again?
If I can never create a field with name tombstonedField, I inherently cannot create a new field with name tombstonedField.subField so why does having the complete view of what this looked like matter?
The only value I see that adding is for future readers of the tombstone - which if that is the reason, fine by me.
EDIT: I also now see value in keeping just the struct name tombstoned so we don't accidentally re-implement a same named type, but my question still seems relevant for removing the fields of the child type.
There was a problem hiding this comment.
Actionable comments posted: 1
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (3)
payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-Default.crd.yaml (1)
498-511: Type mismatch in GCP platform spec validations — validation rules won't execute as intended.The
gcpobject is defined astype: object(line 501) with no properties, but the added CEL validation rules (lines 502-511) apply URL validation functions (isURL(),url().getScheme(),url().getEscapedPath()) toself. These functions expect a string, not an object, causing a semantic type mismatch. The validations will fail or behave unexpectedly at runtime.Clarify the intended design: either restructure
gcpto include a URL property and validate that property, changegcptotype: string, or remove these validations if GCP no longer requires configuration.payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-DevPreviewNoUpgrade.crd.yaml (1)
498-511: Remove orphaned x-kubernetes-validations from empty GCP object.The x-kubernetes-validations block at lines 502–511 applies URL-validation rules (checking scheme, path, and format) to the GCP platform spec object itself. However, the GCP section has
type: objectwith no properties defined (theserviceEndpointsfield was removed). These validations are now orphaned and meaningless—they attempt to validate an empty object as if it were a URL string.This will either fail CRD validation or provide no practical effect. Remove this block or ensure GCP properties are re-added if validation is necessary.
gcp: description: gcp contains settings specific to the Google Cloud Platform infrastructure provider. type: object - x-kubernetes-validations: - - message: must be a valid URL - rule: isURL(self) - - message: scheme must be https - rule: 'isURL(self) ? (url(self).getScheme() == "https") - : true' - - message: url must consist only of a scheme and domain. - The url path must be empty. - rule: url(self).getEscapedPath() == "" || url(self).getEscapedPath() - == "/"payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-TechPreviewNoUpgrade.crd.yaml (1)
498-511: Remove x-kubernetes-validations from the gcp object—these URL validation rules cannot execute ontype: objectand will fail at runtime.The gcp field (line 498) is defined as
type: objectwith no nested properties, yet the x-kubernetes-validations (lines 502–511) attempt to apply string/URL operations (isURL(self),url(self).getScheme(),url(self).getEscapedPath()) toself. Sinceselfrefers to the entire gcp object (not a string), these CEL rules will fail.The git history shows these rules were added in commit b9b4604 when
serviceEndpointswas removed. The validations appear to have been incorrectly relocated from the nestedurlstring field to the parent gcp object level. Either remove the validations or restructure gcp to include a URL string property if endpoint configuration is still needed.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Cache: Disabled due to data retention organization setting
Knowledge base: Disabled due to Reviews -> Disable Knowledge Base setting
📒 Files selected for processing (23)
config/v1/tests/infrastructures.config.openshift.io/GCPCustomAPIEndpoints.yaml(0 hunks)config/v1/tests/infrastructures.config.openshift.io/GCPCustomAPIEndpointsInstall.yaml(0 hunks)config/v1/types_infrastructure.go(2 hunks)config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-CustomNoUpgrade.crd.yaml(0 hunks)config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-DevPreviewNoUpgrade.crd.yaml(0 hunks)config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-TechPreviewNoUpgrade.crd.yaml(0 hunks)config/v1/zz_generated.deepcopy.go(0 hunks)config/v1/zz_generated.featuregated-crd-manifests.yaml(0 hunks)config/v1/zz_generated.swagger_doc_generated.go(0 hunks)machineconfiguration/v1/tests/controllerconfigs.machineconfiguration.openshift.io/GCPCustomAPIEndpoints.yaml(0 hunks)machineconfiguration/v1/tests/controllerconfigs.machineconfiguration.openshift.io/GCPCustomAPIEndpointsInstall.yaml(0 hunks)machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-CustomNoUpgrade.crd.yaml(0 hunks)machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-DevPreviewNoUpgrade.crd.yaml(0 hunks)machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-TechPreviewNoUpgrade.crd.yaml(0 hunks)machineconfiguration/v1/zz_generated.featuregated-crd-manifests.yaml(0 hunks)openapi/generated_openapi/zz_generated.openapi.go(1 hunks)payload-manifests/crds/0000_10_config-operator_01_infrastructures-CustomNoUpgrade.crd.yaml(0 hunks)payload-manifests/crds/0000_10_config-operator_01_infrastructures-DevPreviewNoUpgrade.crd.yaml(0 hunks)payload-manifests/crds/0000_10_config-operator_01_infrastructures-TechPreviewNoUpgrade.crd.yaml(0 hunks)payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-CustomNoUpgrade.crd.yaml(1 hunks)payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-Default.crd.yaml(1 hunks)payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-DevPreviewNoUpgrade.crd.yaml(1 hunks)payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-TechPreviewNoUpgrade.crd.yaml(1 hunks)
💤 Files with no reviewable changes (17)
- config/v1/zz_generated.deepcopy.go
- config/v1/tests/infrastructures.config.openshift.io/GCPCustomAPIEndpoints.yaml
- payload-manifests/crds/0000_10_config-operator_01_infrastructures-DevPreviewNoUpgrade.crd.yaml
- machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-CustomNoUpgrade.crd.yaml
- machineconfiguration/v1/zz_generated.featuregated-crd-manifests.yaml
- machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-DevPreviewNoUpgrade.crd.yaml
- machineconfiguration/v1/zz_generated.crd-manifests/0000_80_machine-config_01_controllerconfigs-TechPreviewNoUpgrade.crd.yaml
- payload-manifests/crds/0000_10_config-operator_01_infrastructures-CustomNoUpgrade.crd.yaml
- config/v1/zz_generated.featuregated-crd-manifests.yaml
- config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-TechPreviewNoUpgrade.crd.yaml
- config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-DevPreviewNoUpgrade.crd.yaml
- config/v1/zz_generated.swagger_doc_generated.go
- config/v1/zz_generated.crd-manifests/0000_10_config-operator_01_infrastructures-CustomNoUpgrade.crd.yaml
- machineconfiguration/v1/tests/controllerconfigs.machineconfiguration.openshift.io/GCPCustomAPIEndpointsInstall.yaml
- config/v1/tests/infrastructures.config.openshift.io/GCPCustomAPIEndpointsInstall.yaml
- payload-manifests/crds/0000_10_config-operator_01_infrastructures-TechPreviewNoUpgrade.crd.yaml
- machineconfiguration/v1/tests/controllerconfigs.machineconfiguration.openshift.io/GCPCustomAPIEndpoints.yaml
🧰 Additional context used
📓 Path-based instructions (1)
**
⚙️ CodeRabbit configuration file
-Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity.
Files:
payload-manifests/crds/0000_80_machine-config_01_controllerconfigs-CustomNoUpgrade.crd.yamlopenapi/generated_openapi/zz_generated.openapi.gopayload-manifests/crds/0000_80_machine-config_01_controllerconfigs-Default.crd.yamlconfig/v1/types_infrastructure.gopayload-manifests/crds/0000_80_machine-config_01_controllerconfigs-DevPreviewNoUpgrade.crd.yamlpayload-manifests/crds/0000_80_machine-config_01_controllerconfigs-TechPreviewNoUpgrade.crd.yaml
🔇 Additional comments (3)
openapi/generated_openapi/zz_generated.openapi.go (1)
12937-12939: LGTM! Generated OpenAPI dependencies correctly updated.The Dependencies list has been properly updated to remove the
GCPServiceEndpointreference, which aligns with the PR objective of removing GCP Service Endpoints. The generated code is consistent with the type and CRD removals throughout the PR.config/v1/types_infrastructure.go (2)
702-738: LGTM - Tombstone implementation follows previous review guidance.The GCP service endpoint types are properly commented out rather than removed, preserving the complete API history as requested in the previous review. The tombstone markers are clear and all documentation is preserved.
Based on past review comments, this correctly addresses the requirement to comment rather than remove the types.
794-808: LGTM - ServiceEndpoints field properly tombstoned.The ServiceEndpoints field is correctly tombstoned with preserved documentation and a clear warning that the field name cannot be reused. This follows the same pattern as the existing ClusterHostedDNS tombstone above it (lines 775-778), maintaining consistency.
Removing the GCP Service Endpoints in favor of a new solution. The new solution will create a
private hosted zone that will route traffic to the googleapi endpoints via an ip address created
during the initialization of the private serivce connect endpoint. The cluster components no longer
need the endpoint overrides, so the service endpoints can and should be removed to avoid confusion.
|
/lgtm |
|
/hold cancel Discussed with @barbacbd out of band |
|
Scheduling tests matching the |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: damdo, JoelSpeed The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
@JoelSpeed: Overrode contexts on behalf of JoelSpeed: ci/prow/verify-crd-schema, ci/prow/verify-crdify DetailsIn response to this:
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. |
|
/test e2e-aws-ovn-techpreview |
|
/verified by integration |
|
@barbacbd: This PR has been marked as verified by DetailsIn response to this:
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. |
|
/override ci/prow/verify-crdify ci/prow/verify-crd-schema Copying from Joel above, these are expected to fail here. |
|
@barbacbd: barbacbd unauthorized: /override is restricted to Repo administrators, approvers in top level OWNERS file, and the following github teams:openshift: openshift-release-oversight openshift-staff-engineers openshift-sustaining-engineers. DetailsIn response to this:
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. |
|
/override ci/prow/verify-crdify ci/prow/verify-crd-schema |
|
@JoelSpeed: Overrode contexts on behalf of JoelSpeed: ci/prow/verify-crd-schema, ci/prow/verify-crdify DetailsIn response to this:
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. |
|
@barbacbd: all tests passed! Full PR test history. Your PR dashboard. DetailsInstructions 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. |
|
This seems to have broken https://github.com/openshift/client-go/blob/master/config/applyconfigurations/config/v1/gcpserviceendpoint.go which still references |
|
@vincentdephily thank you for your help!
openshift/client-go#350
updated client-go
Can you check to see if the issue is now resolved?
…On Thu, Nov 27, 2025 at 8:17 AM Vincent de Phily ***@***.***> wrote:
*vincentdephily* left a comment (openshift/api#2576)
<#2576 (comment)>
This seems to have broken
https://github.com/openshift/client-go/blob/master/config/applyconfigurations/config/v1/gcpserviceendpoint.go
which still references configv1.GCPServiceEndpointName. Do you know if
there is a PR planed for o/client-go, or do you have advice for a fix ?
—
Reply to this email directly, view it on GitHub
<#2576 (comment)>, or
unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABAVQYOQE4HIOLUU2SURP633632T7AVCNFSM6AAAAACLVYZWWGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTKOBVHAYTEMBTGY>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
Removing the GCP Service Endpoints in favor of a new solution. The new solution will create a private hosted zone that will route traffic to the googleapi endpoints via an ip address created during the initialization of the private serivce connect endpoint. The cluster components no longer need the endpoint overrides, so the service endpoints can and should be removed to avoid confusion.