From 8d5237b3a01d348ece6871993009680ce0f6e982 Mon Sep 17 00:00:00 2001 From: barbacbd Date: Tue, 14 Jul 2026 14:31:56 -0400 Subject: [PATCH] CORS-4417: Add UniverseDomain field to GCPPlatformStatus --- config/v1/types_infrastructure.go | 14 ++++++++++++++ config/v1/zz_generated.swagger_doc_generated.go | 1 + openapi/generated_openapi/zz_generated.openapi.go | 7 +++++++ openapi/openapi.json | 4 ++++ 4 files changed, 26 insertions(+) diff --git a/config/v1/types_infrastructure.go b/config/v1/types_infrastructure.go index 5d9f10374eb..a642a10ff9e 100644 --- a/config/v1/types_infrastructure.go +++ b/config/v1/types_infrastructure.go @@ -822,6 +822,20 @@ type GCPPlatformStatus struct { // +optional // +openshift:enable:FeatureGate=GCPCustomAPIEndpointsInstall // ServiceEndpoints []GCPServiceEndpoint `json:"serviceEndpoints,omitempty"` + + // universeDomain is the GCP universe domain detected from credentials. + // Populated by the installer for informational/observability purposes. + // Components should NOT read this field - they should detect universe domain + // from their own GCP credentials. + // + // When omitted, standard public GCP (googleapis.com) is assumed. + // + // universeDomain must be between 1 and 253 characters in length. + // + // +kubebuilder:validation:MinLength=1 + // +kubebuilder:validation:MaxLength=253 + // +optional + UniverseDomain string `json:"universeDomain,omitempty"` } // GCPResourceLabel is a label to apply to GCP resources created for the cluster. diff --git a/config/v1/zz_generated.swagger_doc_generated.go b/config/v1/zz_generated.swagger_doc_generated.go index 631f11a1b29..3bd1852c061 100644 --- a/config/v1/zz_generated.swagger_doc_generated.go +++ b/config/v1/zz_generated.swagger_doc_generated.go @@ -1787,6 +1787,7 @@ var map_GCPPlatformStatus = map[string]string{ "resourceLabels": "resourceLabels is a list of additional labels to apply to GCP resources created for the cluster. See https://cloud.google.com/compute/docs/labeling-resources for information on labeling GCP resources. GCP supports a maximum of 64 labels per resource. OpenShift reserves 32 labels for internal use, allowing 32 labels for user configuration.", "resourceTags": "resourceTags is a list of additional tags to apply to GCP resources created for the cluster. See https://cloud.google.com/resource-manager/docs/tags/tags-overview for information on tagging GCP resources. GCP supports a maximum of 50 tags per resource.", "cloudLoadBalancerConfig": "cloudLoadBalancerConfig holds configuration related to DNS and cloud load balancers. It allows configuration of in-cluster DNS as an alternative to the platform default DNS implementation. When using the ClusterHosted DNS type, Load Balancer IP addresses must be provided for the API and internal API load balancers as well as the ingress load balancer.", + "universeDomain": "universeDomain is the GCP universe domain detected from credentials. Populated by the installer for informational/observability purposes. Components should NOT read this field - they should detect universe domain from their own GCP credentials.\n\nWhen omitted, standard public GCP (googleapis.com) is assumed.\n\nuniverseDomain must be between 1 and 253 characters in length.", } func (GCPPlatformStatus) SwaggerDoc() map[string]string { diff --git a/openapi/generated_openapi/zz_generated.openapi.go b/openapi/generated_openapi/zz_generated.openapi.go index 636966aeec1..b2eb8b47660 100644 --- a/openapi/generated_openapi/zz_generated.openapi.go +++ b/openapi/generated_openapi/zz_generated.openapi.go @@ -14079,6 +14079,13 @@ func schema_openshift_api_config_v1_GCPPlatformStatus(ref common.ReferenceCallba Ref: ref(configv1.CloudLoadBalancerConfig{}.OpenAPIModelName()), }, }, + "universeDomain": { + SchemaProps: spec.SchemaProps{ + Description: "universeDomain is the GCP universe domain detected from credentials. Populated by the installer for informational/observability purposes. Components should NOT read this field - they should detect universe domain from their own GCP credentials.\n\nWhen omitted, standard public GCP (googleapis.com) is assumed.\n\nuniverseDomain must be between 1 and 253 characters in length.", + Type: []string{"string"}, + Format: "", + }, + }, }, Required: []string{"projectID", "region"}, }, diff --git a/openapi/openapi.json b/openapi/openapi.json index 468c116a34e..f5bf1e10fd3 100644 --- a/openapi/openapi.json +++ b/openapi/openapi.json @@ -7208,6 +7208,10 @@ "key" ], "x-kubernetes-list-type": "map" + }, + "universeDomain": { + "description": "universeDomain is the GCP universe domain detected from credentials. Populated by the installer for informational/observability purposes. Components should NOT read this field - they should detect universe domain from their own GCP credentials.\n\nWhen omitted, standard public GCP (googleapis.com) is assumed.\n\nuniverseDomain must be between 1 and 253 characters in length.", + "type": "string" } } },