From 86b4e47c0e1e2eea1625d3b906ae1628923e891a Mon Sep 17 00:00:00 2001 From: Richard Vanderpool <49568690+rvanderp3@users.noreply.github.com> Date: Thu, 18 Jan 2024 11:53:25 -0500 Subject: [PATCH 1/2] vendor --- go.mod | 4 +- go.sum | 8 ++-- .../openshift/api/config/v1/feature_gates.go | 22 ++++++++- .../openshift/api/config/v1/types_feature.go | 4 +- ...olplanemachineset-CustomNoUpgrade.crd.yaml | 7 ++- ...10_controlplanemachineset-Default.crd.yaml | 17 +++++++ ...nemachineset-TechPreviewNoUpgrade.crd.yaml | 7 ++- .../v1/types_controlplanemachineset.go | 5 ++- .../api/machine/v1beta1/types_gcpprovider.go | 45 ++++++++++++++++++- .../machine/v1beta1/types_vsphereprovider.go | 6 +++ .../machine/v1beta1/zz_generated.deepcopy.go | 26 +++++++++++ .../zz_generated.swagger_doc_generated.go | 15 ++++++- .../applyconfigurations/internal/internal.go | 4 +- vendor/modules.txt | 4 +- 14 files changed, 155 insertions(+), 19 deletions(-) diff --git a/go.mod b/go.mod index e16853a59..78e188a65 100644 --- a/go.mod +++ b/go.mod @@ -12,8 +12,8 @@ require ( github.com/google/uuid v1.3.0 github.com/onsi/ginkgo/v2 v2.14.0 github.com/onsi/gomega v1.30.0 - github.com/openshift/api v0.0.0-20240112192513-412e126bd40b - github.com/openshift/client-go v0.0.0-20240104132419-223261fd8630 + github.com/openshift/api v0.0.0-20240124164020-e2ce40831f2e + github.com/openshift/client-go v0.0.0-20240125160436-aa5df63097c4 github.com/openshift/cluster-api-actuator-pkg/testutils v0.0.0-20231130130825-ea989e248004 github.com/openshift/library-go v0.0.0-20240115112243-470c096a1ca9 github.com/spf13/pflag v1.0.5 diff --git a/go.sum b/go.sum index cbf605b63..6300f18ea 100644 --- a/go.sum +++ b/go.sum @@ -456,10 +456,10 @@ github.com/onsi/ginkgo/v2 v2.14.0 h1:vSmGj2Z5YPb9JwCWT6z6ihcUvDhuXLc3sJiqd3jMKAY github.com/onsi/ginkgo/v2 v2.14.0/go.mod h1:JkUdW7JkN0V6rFvsHcJ478egV3XH9NxpD27Hal/PhZw= github.com/onsi/gomega v1.30.0 h1:hvMK7xYz4D3HapigLTeGdId/NcfQx1VHMJc60ew99+8= github.com/onsi/gomega v1.30.0/go.mod h1:9sxs+SwGrKI0+PWe4Fxa9tFQQBG5xSsSbMXOI8PPpoQ= -github.com/openshift/api v0.0.0-20240112192513-412e126bd40b h1:GfdgT7sKknrqzFU5XRPMIQzv17f9NnZ3K7VQ8obuZMM= -github.com/openshift/api v0.0.0-20240112192513-412e126bd40b/go.mod h1:CxgbWAlvu2iQB0UmKTtRu1YfepRg1/vJ64n2DlIEVz4= -github.com/openshift/client-go v0.0.0-20240104132419-223261fd8630 h1:JQ/TO3bSDowReecFDvz+Nr0Fx8aoJI0zdo01y2W5NKk= -github.com/openshift/client-go v0.0.0-20240104132419-223261fd8630/go.mod h1:8W4atsD8vBtEK0qplKpFWo+7XsQwzHTlqL7o/XpagRM= +github.com/openshift/api v0.0.0-20240124164020-e2ce40831f2e h1:cxgCNo/R769CO23AK5TCh45H9SMUGZ8RukiF2/Qif3o= +github.com/openshift/api v0.0.0-20240124164020-e2ce40831f2e/go.mod h1:CxgbWAlvu2iQB0UmKTtRu1YfepRg1/vJ64n2DlIEVz4= +github.com/openshift/client-go v0.0.0-20240125160436-aa5df63097c4 h1:Ct+/c9d5rjZudN+VBLxRJIQfPy1gJZier1P1KdpvCaM= +github.com/openshift/client-go v0.0.0-20240125160436-aa5df63097c4/go.mod h1:ZS5cpA+0zI/ziDQxAKKvGkRKn9BJppqDYdAph+OUTlo= github.com/openshift/cluster-api-actuator-pkg/testutils v0.0.0-20231130130825-ea989e248004 h1:z5MmF35DnAa+HOX6AHMrGhkm7YXaKZAxrNL3JsYHJ1I= github.com/openshift/cluster-api-actuator-pkg/testutils v0.0.0-20231130130825-ea989e248004/go.mod h1:8U97lU5NyyrNKkVcG3zRXFbI33Z5D+GZYp6k4oHoT9k= github.com/openshift/library-go v0.0.0-20240115112243-470c096a1ca9 h1:dQmXUWo3Ko+8K/fxKPF01NuTrD92d/ABBQ4NfxkwbAY= diff --git a/vendor/github.com/openshift/api/config/v1/feature_gates.go b/vendor/github.com/openshift/api/config/v1/feature_gates.go index 91959f94d..9d4ca1633 100644 --- a/vendor/github.com/openshift/api/config/v1/feature_gates.go +++ b/vendor/github.com/openshift/api/config/v1/feature_gates.go @@ -407,7 +407,7 @@ var ( FeatureGateAttributes: FeatureGateAttributes{ Name: FeatureGateSignatureStores, }, - OwningJiraComponent: "over-the-air-updates", + OwningJiraComponent: "Cluster Version Operator", ResponsiblePerson: "lmohanty", OwningProduct: ocpSpecific, } @@ -431,4 +431,24 @@ var ( ResponsiblePerson: "jhernand", OwningProduct: ocpSpecific, } + + FeatureGateUpgradeStatus = FeatureGateName("UpgradeStatus") + upgradeStatus = FeatureGateDescription{ + FeatureGateAttributes: FeatureGateAttributes{ + Name: FeatureGateUpgradeStatus, + }, + OwningJiraComponent: "Cluster Version Operator", + ResponsiblePerson: "pmuller", + OwningProduct: ocpSpecific, + } + + FeatureGateTranslateStreamCloseWebsocketRequests = FeatureGateName("TranslateStreamCloseWebsocketRequests") + translateStreamCloseWebsocketRequests = FeatureGateDescription{ + FeatureGateAttributes: FeatureGateAttributes{ + Name: FeatureGateTranslateStreamCloseWebsocketRequests, + }, + OwningJiraComponent: "kube-apiserver", + ResponsiblePerson: "akashem", + OwningProduct: kubernetes, + } ) diff --git a/vendor/github.com/openshift/api/config/v1/types_feature.go b/vendor/github.com/openshift/api/config/v1/types_feature.go index e779782e5..a5b57f88b 100644 --- a/vendor/github.com/openshift/api/config/v1/types_feature.go +++ b/vendor/github.com/openshift/api/config/v1/types_feature.go @@ -180,7 +180,6 @@ var FeatureSets = map[FeatureSet]*FeatureGateEnabledDisabled{ with(vSphereStaticIPs). with(routeExternalCertificate). with(automatedEtcdBackup). - with(vSphereControlPlaneMachineset). without(machineAPIOperatorDisableMachineHealthCheckController). with(adminNetworkPolicy). with(dnsNameResolver). @@ -195,6 +194,8 @@ var FeatureSets = map[FeatureSet]*FeatureGateEnabledDisabled{ with(onClusterBuild). with(signatureStores). with(pinnedImages). + with(upgradeStatus). + with(translateStreamCloseWebsocketRequests). toFeatures(defaultFeatures), LatencySensitive: newDefaultFeatures(). toFeatures(defaultFeatures), @@ -213,6 +214,7 @@ var defaultFeatures = &FeatureGateEnabledDisabled{ privateHostedZoneAWS, buildCSIVolumes, kmsv1, + vSphereControlPlaneMachineset, }, Disabled: []FeatureGateDescription{ disableKubeletCloudCredentialProviders, // We do not currently ship the correct config to use the external credentials provider. diff --git a/vendor/github.com/openshift/api/machine/v1/0000_10_controlplanemachineset-CustomNoUpgrade.crd.yaml b/vendor/github.com/openshift/api/machine/v1/0000_10_controlplanemachineset-CustomNoUpgrade.crd.yaml index 61f84a389..1d1ac1eb8 100644 --- a/vendor/github.com/openshift/api/machine/v1/0000_10_controlplanemachineset-CustomNoUpgrade.crd.yaml +++ b/vendor/github.com/openshift/api/machine/v1/0000_10_controlplanemachineset-CustomNoUpgrade.crd.yaml @@ -335,9 +335,10 @@ spec: name: description: name of the failure domain in which the vSphere machine provider will create the VM. Failure domains are defined in a cluster's config.openshift.io/Infrastructure resource. When balancing machines across failure domains, the control plane machine set will inject configuration from the Infrastructure resource into the machine providerSpec to allocate the machine to a failure domain. type: string + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map x-kubernetes-validations: - - rule: 'has(self.platform) && self.platform == ''VSphere'' ? has(self.vsphere) : !has(self.vsphere)' - message: vsphere configuration is required when platform is VSphere, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''AWS'' ? has(self.aws) : !has(self.aws)' message: aws configuration is required when platform is AWS, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''Azure'' ? has(self.azure) : !has(self.azure)' @@ -346,6 +347,8 @@ spec: message: gcp configuration is required when platform is GCP, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''OpenStack'' ? has(self.openstack) : !has(self.openstack)' message: openstack configuration is required when platform is OpenStack, and forbidden otherwise + - rule: 'has(self.platform) && self.platform == ''VSphere'' ? has(self.vsphere) : !has(self.vsphere)' + message: vsphere configuration is required when platform is VSphere, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''Nutanix'' ? has(self.nutanix) : !has(self.nutanix)' message: nutanix configuration is required when platform is Nutanix, and forbidden otherwise metadata: diff --git a/vendor/github.com/openshift/api/machine/v1/0000_10_controlplanemachineset-Default.crd.yaml b/vendor/github.com/openshift/api/machine/v1/0000_10_controlplanemachineset-Default.crd.yaml index 906aca90d..728b1c276 100644 --- a/vendor/github.com/openshift/api/machine/v1/0000_10_controlplanemachineset-Default.crd.yaml +++ b/vendor/github.com/openshift/api/machine/v1/0000_10_controlplanemachineset-Default.crd.yaml @@ -323,6 +323,21 @@ spec: - AlibabaCloud - Nutanix - External + vsphere: + description: vsphere configures failure domain information for the VSphere platform. + type: array + items: + description: VSphereFailureDomain configures failure domain information for the vSphere platform + type: object + required: + - name + properties: + name: + description: name of the failure domain in which the vSphere machine provider will create the VM. Failure domains are defined in a cluster's config.openshift.io/Infrastructure resource. When balancing machines across failure domains, the control plane machine set will inject configuration from the Infrastructure resource into the machine providerSpec to allocate the machine to a failure domain. + type: string + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map x-kubernetes-validations: - rule: 'has(self.platform) && self.platform == ''AWS'' ? has(self.aws) : !has(self.aws)' message: aws configuration is required when platform is AWS, and forbidden otherwise @@ -332,6 +347,8 @@ spec: message: gcp configuration is required when platform is GCP, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''OpenStack'' ? has(self.openstack) : !has(self.openstack)' message: openstack configuration is required when platform is OpenStack, and forbidden otherwise + - rule: 'has(self.platform) && self.platform == ''VSphere'' ? has(self.vsphere) : !has(self.vsphere)' + message: vsphere configuration is required when platform is VSphere, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''Nutanix'' ? has(self.nutanix) : !has(self.nutanix)' message: nutanix configuration is required when platform is Nutanix, and forbidden otherwise metadata: diff --git a/vendor/github.com/openshift/api/machine/v1/0000_10_controlplanemachineset-TechPreviewNoUpgrade.crd.yaml b/vendor/github.com/openshift/api/machine/v1/0000_10_controlplanemachineset-TechPreviewNoUpgrade.crd.yaml index 442ae307a..b4d24f8df 100644 --- a/vendor/github.com/openshift/api/machine/v1/0000_10_controlplanemachineset-TechPreviewNoUpgrade.crd.yaml +++ b/vendor/github.com/openshift/api/machine/v1/0000_10_controlplanemachineset-TechPreviewNoUpgrade.crd.yaml @@ -335,9 +335,10 @@ spec: name: description: name of the failure domain in which the vSphere machine provider will create the VM. Failure domains are defined in a cluster's config.openshift.io/Infrastructure resource. When balancing machines across failure domains, the control plane machine set will inject configuration from the Infrastructure resource into the machine providerSpec to allocate the machine to a failure domain. type: string + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map x-kubernetes-validations: - - rule: 'has(self.platform) && self.platform == ''VSphere'' ? has(self.vsphere) : !has(self.vsphere)' - message: vsphere configuration is required when platform is VSphere, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''AWS'' ? has(self.aws) : !has(self.aws)' message: aws configuration is required when platform is AWS, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''Azure'' ? has(self.azure) : !has(self.azure)' @@ -346,6 +347,8 @@ spec: message: gcp configuration is required when platform is GCP, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''OpenStack'' ? has(self.openstack) : !has(self.openstack)' message: openstack configuration is required when platform is OpenStack, and forbidden otherwise + - rule: 'has(self.platform) && self.platform == ''VSphere'' ? has(self.vsphere) : !has(self.vsphere)' + message: vsphere configuration is required when platform is VSphere, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''Nutanix'' ? has(self.nutanix) : !has(self.nutanix)' message: nutanix configuration is required when platform is Nutanix, and forbidden otherwise metadata: diff --git a/vendor/github.com/openshift/api/machine/v1/types_controlplanemachineset.go b/vendor/github.com/openshift/api/machine/v1/types_controlplanemachineset.go index 42e2b83fa..c31926f0c 100644 --- a/vendor/github.com/openshift/api/machine/v1/types_controlplanemachineset.go +++ b/vendor/github.com/openshift/api/machine/v1/types_controlplanemachineset.go @@ -231,7 +231,7 @@ const ( // +kubebuilder:validation:XValidation:rule="has(self.platform) && self.platform == 'Azure' ? has(self.azure) : !has(self.azure)",message="azure configuration is required when platform is Azure, and forbidden otherwise" // +kubebuilder:validation:XValidation:rule="has(self.platform) && self.platform == 'GCP' ? has(self.gcp) : !has(self.gcp)",message="gcp configuration is required when platform is GCP, and forbidden otherwise" // +kubebuilder:validation:XValidation:rule="has(self.platform) && self.platform == 'OpenStack' ? has(self.openstack) : !has(self.openstack)",message="openstack configuration is required when platform is OpenStack, and forbidden otherwise" -// +openshift:validation:FeatureSetAwareXValidation:featureSet=CustomNoUpgrade;TechPreviewNoUpgrade,rule="has(self.platform) && self.platform == 'VSphere' ? has(self.vsphere) : !has(self.vsphere)",message="vsphere configuration is required when platform is VSphere, and forbidden otherwise" +// +kubebuilder:validation:XValidation:rule="has(self.platform) && self.platform == 'VSphere' ? has(self.vsphere) : !has(self.vsphere)",message="vsphere configuration is required when platform is VSphere, and forbidden otherwise" // +kubebuilder:validation:XValidation:rule="has(self.platform) && self.platform == 'Nutanix' ? has(self.nutanix) : !has(self.nutanix)",message="nutanix configuration is required when platform is Nutanix, and forbidden otherwise" type FailureDomains struct { // Platform identifies the platform for which the FailureDomain represents. @@ -253,8 +253,9 @@ type FailureDomains struct { GCP *[]GCPFailureDomain `json:"gcp,omitempty"` // vsphere configures failure domain information for the VSphere platform. + // +listType=map + // +listMapKey=name // +optional - // +openshift:enable:FeatureSets=CustomNoUpgrade;TechPreviewNoUpgrade VSphere []VSphereFailureDomain `json:"vsphere,omitempty"` // OpenStack configures failure domain information for the OpenStack platform. diff --git a/vendor/github.com/openshift/api/machine/v1beta1/types_gcpprovider.go b/vendor/github.com/openshift/api/machine/v1beta1/types_gcpprovider.go index 86e62f9ec..b5bb50619 100644 --- a/vendor/github.com/openshift/api/machine/v1beta1/types_gcpprovider.go +++ b/vendor/github.com/openshift/api/machine/v1beta1/types_gcpprovider.go @@ -102,7 +102,7 @@ type GCPMachineProviderSpec struct { NetworkInterfaces []*GCPNetworkInterface `json:"networkInterfaces,omitempty"` // ServiceAccounts is a list of GCP service accounts to be used by the VM. ServiceAccounts []GCPServiceAccount `json:"serviceAccounts"` - // Tags list of tags to apply to the VM. + // Tags list of network tags to apply to the VM. Tags []string `json:"tags,omitempty"` // TargetPools are used for network TCP/UDP load balancing. A target pool references member instances, // an associated legacy HttpHealthCheck resource, and, optionally, a backup target pool @@ -149,6 +149,49 @@ type GCPMachineProviderSpec struct { // +kubebuilder:validation:Enum=Enabled;Disabled // +optional ConfidentialCompute ConfidentialComputePolicy `json:"confidentialCompute,omitempty"` + + // resourceManagerTags is an optional list of tags to apply to the 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. + // +kubebuilder:validation:MaxItems=50 + // +listType=map + // +listMapKey=key + // +optional + ResourceManagerTags []ResourceManagerTag `json:"resourceManagerTags,omitempty"` +} + +// ResourceManagerTag is a tag to apply to GCP resources created for the cluster. +type ResourceManagerTag struct { + // parentID is the ID of the hierarchical resource where the tags are defined + // e.g. at the Organization or the Project level. To find the Organization or Project ID ref + // https://cloud.google.com/resource-manager/docs/creating-managing-organization#retrieving_your_organization_id + // https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects + // An OrganizationID can have a maximum of 32 characters and must consist of decimal numbers, and + // cannot have leading zeroes. A ProjectID must be 6 to 30 characters in length, can only contain + // lowercase letters, numbers, and hyphens, and must start with a letter, and cannot end with a hyphen. + // +kubebuilder:validation:Required + // +kubebuilder:validation:MinLength=1 + // +kubebuilder:validation:MaxLength=32 + // +kubebuilder:validation:Pattern=`(^[1-9][0-9]{0,31}$)|(^[a-z][a-z0-9-]{4,28}[a-z0-9]$)` + ParentID string `json:"parentID"` + + // key is the key part of the tag. A tag key can have a maximum of 63 characters and cannot be empty. + // Tag key must begin and end with an alphanumeric character, and must contain only uppercase, lowercase + // alphanumeric characters, and the following special characters `._-`. + // +kubebuilder:validation:Required + // +kubebuilder:validation:MinLength=1 + // +kubebuilder:validation:MaxLength=63 + // +kubebuilder:validation:Pattern=`^[a-zA-Z0-9]([0-9A-Za-z_.-]{0,61}[a-zA-Z0-9])?$` + Key string `json:"key"` + + // value is the value part of the tag. A tag value can have a maximum of 63 characters and cannot be empty. + // Tag value must begin and end with an alphanumeric character, and must contain only uppercase, lowercase + // alphanumeric characters, and the following special characters `_-.@%=+:,*#&(){}[]` and spaces. + // +kubebuilder:validation:Required + // +kubebuilder:validation:MinLength=1 + // +kubebuilder:validation:MaxLength=63 + // +kubebuilder:validation:Pattern=`^[a-zA-Z0-9]([0-9A-Za-z_.@%=+:,*#&()\[\]{}\-\s]{0,61}[a-zA-Z0-9])?$` + Value string `json:"value"` } // GCPDisk describes disks for GCP. diff --git a/vendor/github.com/openshift/api/machine/v1beta1/types_vsphereprovider.go b/vendor/github.com/openshift/api/machine/v1beta1/types_vsphereprovider.go index 27245c8a4..b72693198 100644 --- a/vendor/github.com/openshift/api/machine/v1beta1/types_vsphereprovider.go +++ b/vendor/github.com/openshift/api/machine/v1beta1/types_vsphereprovider.go @@ -51,6 +51,12 @@ type VSphereMachineProviderSpec struct { // This parameter will be ignored if 'LinkedClone' CloneMode is set. // +optional DiskGiB int32 `json:"diskGiB,omitempty"` + // tagIDs is an optional set of tags to add to an instance. Specified tagIDs + // must use URN-notation instead of display names. A maximum of 10 tag IDs may be specified. + // +kubebuilder:validation:Pattern:="^(urn):(vmomi):(InventoryServiceTag):([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}):([^:]+)$" + // +kubebuilder:example=urn:vmomi:InventoryServiceTag:5736bf56-49f5-4667-b38c-b97e09dc9578:GLOBAL + // +optional + TagIDs []string `json:"tagIDs,omitempty"` // Snapshot is the name of the snapshot from which the VM was cloned // +optional Snapshot string `json:"snapshot"` diff --git a/vendor/github.com/openshift/api/machine/v1beta1/zz_generated.deepcopy.go b/vendor/github.com/openshift/api/machine/v1beta1/zz_generated.deepcopy.go index caffc1898..eb8f0941a 100644 --- a/vendor/github.com/openshift/api/machine/v1beta1/zz_generated.deepcopy.go +++ b/vendor/github.com/openshift/api/machine/v1beta1/zz_generated.deepcopy.go @@ -754,6 +754,11 @@ func (in *GCPMachineProviderSpec) DeepCopyInto(out *GCPMachineProviderSpec) { copy(*out, *in) } out.ShieldedInstanceConfig = in.ShieldedInstanceConfig + if in.ResourceManagerTags != nil { + in, out := &in.ResourceManagerTags, &out.ResourceManagerTags + *out = make([]ResourceManagerTag, len(*in)) + copy(*out, *in) + } return } @@ -1590,6 +1595,22 @@ func (in *ProviderSpec) DeepCopy() *ProviderSpec { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ResourceManagerTag) DeepCopyInto(out *ResourceManagerTag) { + *out = *in + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceManagerTag. +func (in *ResourceManagerTag) DeepCopy() *ResourceManagerTag { + if in == nil { + return nil + } + out := new(ResourceManagerTag) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *SecurityProfile) DeepCopyInto(out *SecurityProfile) { *out = *in @@ -1784,6 +1805,11 @@ func (in *VSphereMachineProviderSpec) DeepCopyInto(out *VSphereMachineProviderSp **out = **in } in.Network.DeepCopyInto(&out.Network) + if in.TagIDs != nil { + in, out := &in.TagIDs, &out.TagIDs + *out = make([]string, len(*in)) + copy(*out, *in) + } return } diff --git a/vendor/github.com/openshift/api/machine/v1beta1/zz_generated.swagger_doc_generated.go b/vendor/github.com/openshift/api/machine/v1beta1/zz_generated.swagger_doc_generated.go index 108ba557c..ec041f850 100644 --- a/vendor/github.com/openshift/api/machine/v1beta1/zz_generated.swagger_doc_generated.go +++ b/vendor/github.com/openshift/api/machine/v1beta1/zz_generated.swagger_doc_generated.go @@ -430,7 +430,7 @@ var map_GCPMachineProviderSpec = map[string]string{ "gcpMetadata": "Metadata key/value pairs to apply to the VM.", "networkInterfaces": "NetworkInterfaces is a list of network interfaces to be attached to the VM.", "serviceAccounts": "ServiceAccounts is a list of GCP service accounts to be used by the VM.", - "tags": "Tags list of tags to apply to the VM.", + "tags": "Tags list of network tags to apply to the VM.", "targetPools": "TargetPools are used for network TCP/UDP load balancing. A target pool references member instances, an associated legacy HttpHealthCheck resource, and, optionally, a backup target pool", "machineType": "MachineType is the machine type to use for the VM.", "region": "Region is the region in which the GCP machine provider will create the VM.", @@ -442,6 +442,7 @@ var map_GCPMachineProviderSpec = map[string]string{ "restartPolicy": "RestartPolicy determines the behavior when an instance crashes or the underlying infrastructure provider stops the instance as part of a maintenance event (default \"Always\"). Cannot be \"Always\" with preemptible instances. Otherwise, allowed values are \"Always\" and \"Never\". If omitted, the platform chooses a default, which is subject to change over time, currently that default is \"Always\". RestartPolicy represents AutomaticRestart in GCP compute api", "shieldedInstanceConfig": "ShieldedInstanceConfig is the Shielded VM configuration for the VM", "confidentialCompute": "confidentialCompute Defines whether the instance should have confidential compute enabled. If enabled OnHostMaintenance is required to be set to \"Terminate\". If omitted, the platform chooses a default, which is subject to change over time, currently that default is false.", + "resourceManagerTags": "resourceManagerTags is an optional list of tags to apply to the 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.", } func (GCPMachineProviderSpec) SwaggerDoc() map[string]string { @@ -502,6 +503,17 @@ func (GCPShieldedInstanceConfig) SwaggerDoc() map[string]string { return map_GCPShieldedInstanceConfig } +var map_ResourceManagerTag = map[string]string{ + "": "ResourceManagerTag is a tag to apply to GCP resources created for the cluster.", + "parentID": "parentID is the ID of the hierarchical resource where the tags are defined e.g. at the Organization or the Project level. To find the Organization or Project ID ref https://cloud.google.com/resource-manager/docs/creating-managing-organization#retrieving_your_organization_id https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects An OrganizationID can have a maximum of 32 characters and must consist of decimal numbers, and cannot have leading zeroes. A ProjectID must be 6 to 30 characters in length, can only contain lowercase letters, numbers, and hyphens, and must start with a letter, and cannot end with a hyphen.", + "key": "key is the key part of the tag. A tag key can have a maximum of 63 characters and cannot be empty. Tag key must begin and end with an alphanumeric character, and must contain only uppercase, lowercase alphanumeric characters, and the following special characters `._-`.", + "value": "value is the value part of the tag. A tag value can have a maximum of 63 characters and cannot be empty. Tag value must begin and end with an alphanumeric character, and must contain only uppercase, lowercase alphanumeric characters, and the following special characters `_-.@%=+:,*#&(){}[]` and spaces.", +} + +func (ResourceManagerTag) SwaggerDoc() map[string]string { + return map_ResourceManagerTag +} + var map_LastOperation = map[string]string{ "": "LastOperation represents the detail of the last performed operation on the MachineObject.", "description": "Description is the human-readable description of the last operation.", @@ -772,6 +784,7 @@ var map_VSphereMachineProviderSpec = map[string]string{ "numCoresPerSocket": "NumCPUs is the number of cores among which to distribute CPUs in this virtual machine. Defaults to the analogue property value in the template from which this machine is cloned.", "memoryMiB": "MemoryMiB is the size of a virtual machine's memory, in MiB. Defaults to the analogue property value in the template from which this machine is cloned.", "diskGiB": "DiskGiB is the size of a virtual machine's disk, in GiB. Defaults to the analogue property value in the template from which this machine is cloned. This parameter will be ignored if 'LinkedClone' CloneMode is set.", + "tagIDs": "tagIDs is an optional set of tags to add to an instance. Specified tagIDs must use URN-notation instead of display names. A maximum of 10 tag IDs may be specified.", "snapshot": "Snapshot is the name of the snapshot from which the VM was cloned", "cloneMode": "CloneMode specifies the type of clone operation. The LinkedClone mode is only support for templates that have at least one snapshot. If the template has no snapshots, then CloneMode defaults to FullClone. When LinkedClone mode is enabled the DiskGiB field is ignored as it is not possible to expand disks of linked clones. Defaults to FullClone. When using LinkedClone, if no snapshots exist for the source template, falls back to FullClone.", } diff --git a/vendor/github.com/openshift/client-go/machine/applyconfigurations/internal/internal.go b/vendor/github.com/openshift/client-go/machine/applyconfigurations/internal/internal.go index cdbebac7c..edbc7323b 100644 --- a/vendor/github.com/openshift/client-go/machine/applyconfigurations/internal/internal.go +++ b/vendor/github.com/openshift/client-go/machine/applyconfigurations/internal/internal.go @@ -238,7 +238,9 @@ var schemaYAML = typed.YAMLObject(`types: list: elementType: namedType: com.github.openshift.api.machine.v1.VSphereFailureDomain - elementRelationship: atomic + elementRelationship: associative + keys: + - name unions: - discriminator: platform fields: diff --git a/vendor/modules.txt b/vendor/modules.txt index 3566572c1..97d982338 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -548,7 +548,7 @@ github.com/onsi/gomega/matchers/support/goraph/edge github.com/onsi/gomega/matchers/support/goraph/node github.com/onsi/gomega/matchers/support/goraph/util github.com/onsi/gomega/types -# github.com/openshift/api v0.0.0-20240112192513-412e126bd40b +# github.com/openshift/api v0.0.0-20240124164020-e2ce40831f2e ## explicit; go 1.21 github.com/openshift/api github.com/openshift/api/annotations @@ -620,7 +620,7 @@ github.com/openshift/api/template github.com/openshift/api/template/v1 github.com/openshift/api/user github.com/openshift/api/user/v1 -# github.com/openshift/client-go v0.0.0-20240104132419-223261fd8630 +# github.com/openshift/client-go v0.0.0-20240125160436-aa5df63097c4 ## explicit; go 1.21 github.com/openshift/client-go/config/applyconfigurations/config/v1 github.com/openshift/client-go/config/applyconfigurations/config/v1alpha1 From 641469f973df7a3eae687705ef555126975d7a86 Mon Sep 17 00:00:00 2001 From: Richard Vanderpool <49568690+rvanderp3@users.noreply.github.com> Date: Thu, 18 Jan 2024 12:02:47 -0500 Subject: [PATCH 2/2] sync CRDs --- ...trolplanemachineset-customnoupgrade.crd.yaml | 7 +++++-- ...r_00_controlplanemachineset-default.crd.yaml | 17 +++++++++++++++++ ...lanemachineset-techpreviewnoupgrade.crd.yaml | 7 +++++-- 3 files changed, 27 insertions(+), 4 deletions(-) diff --git a/manifests/0000_30_control-plane-machine-set-operator_00_controlplanemachineset-customnoupgrade.crd.yaml b/manifests/0000_30_control-plane-machine-set-operator_00_controlplanemachineset-customnoupgrade.crd.yaml index 61f84a389..1d1ac1eb8 100644 --- a/manifests/0000_30_control-plane-machine-set-operator_00_controlplanemachineset-customnoupgrade.crd.yaml +++ b/manifests/0000_30_control-plane-machine-set-operator_00_controlplanemachineset-customnoupgrade.crd.yaml @@ -335,9 +335,10 @@ spec: name: description: name of the failure domain in which the vSphere machine provider will create the VM. Failure domains are defined in a cluster's config.openshift.io/Infrastructure resource. When balancing machines across failure domains, the control plane machine set will inject configuration from the Infrastructure resource into the machine providerSpec to allocate the machine to a failure domain. type: string + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map x-kubernetes-validations: - - rule: 'has(self.platform) && self.platform == ''VSphere'' ? has(self.vsphere) : !has(self.vsphere)' - message: vsphere configuration is required when platform is VSphere, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''AWS'' ? has(self.aws) : !has(self.aws)' message: aws configuration is required when platform is AWS, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''Azure'' ? has(self.azure) : !has(self.azure)' @@ -346,6 +347,8 @@ spec: message: gcp configuration is required when platform is GCP, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''OpenStack'' ? has(self.openstack) : !has(self.openstack)' message: openstack configuration is required when platform is OpenStack, and forbidden otherwise + - rule: 'has(self.platform) && self.platform == ''VSphere'' ? has(self.vsphere) : !has(self.vsphere)' + message: vsphere configuration is required when platform is VSphere, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''Nutanix'' ? has(self.nutanix) : !has(self.nutanix)' message: nutanix configuration is required when platform is Nutanix, and forbidden otherwise metadata: diff --git a/manifests/0000_30_control-plane-machine-set-operator_00_controlplanemachineset-default.crd.yaml b/manifests/0000_30_control-plane-machine-set-operator_00_controlplanemachineset-default.crd.yaml index 906aca90d..728b1c276 100644 --- a/manifests/0000_30_control-plane-machine-set-operator_00_controlplanemachineset-default.crd.yaml +++ b/manifests/0000_30_control-plane-machine-set-operator_00_controlplanemachineset-default.crd.yaml @@ -323,6 +323,21 @@ spec: - AlibabaCloud - Nutanix - External + vsphere: + description: vsphere configures failure domain information for the VSphere platform. + type: array + items: + description: VSphereFailureDomain configures failure domain information for the vSphere platform + type: object + required: + - name + properties: + name: + description: name of the failure domain in which the vSphere machine provider will create the VM. Failure domains are defined in a cluster's config.openshift.io/Infrastructure resource. When balancing machines across failure domains, the control plane machine set will inject configuration from the Infrastructure resource into the machine providerSpec to allocate the machine to a failure domain. + type: string + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map x-kubernetes-validations: - rule: 'has(self.platform) && self.platform == ''AWS'' ? has(self.aws) : !has(self.aws)' message: aws configuration is required when platform is AWS, and forbidden otherwise @@ -332,6 +347,8 @@ spec: message: gcp configuration is required when platform is GCP, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''OpenStack'' ? has(self.openstack) : !has(self.openstack)' message: openstack configuration is required when platform is OpenStack, and forbidden otherwise + - rule: 'has(self.platform) && self.platform == ''VSphere'' ? has(self.vsphere) : !has(self.vsphere)' + message: vsphere configuration is required when platform is VSphere, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''Nutanix'' ? has(self.nutanix) : !has(self.nutanix)' message: nutanix configuration is required when platform is Nutanix, and forbidden otherwise metadata: diff --git a/manifests/0000_30_control-plane-machine-set-operator_00_controlplanemachineset-techpreviewnoupgrade.crd.yaml b/manifests/0000_30_control-plane-machine-set-operator_00_controlplanemachineset-techpreviewnoupgrade.crd.yaml index 442ae307a..b4d24f8df 100644 --- a/manifests/0000_30_control-plane-machine-set-operator_00_controlplanemachineset-techpreviewnoupgrade.crd.yaml +++ b/manifests/0000_30_control-plane-machine-set-operator_00_controlplanemachineset-techpreviewnoupgrade.crd.yaml @@ -335,9 +335,10 @@ spec: name: description: name of the failure domain in which the vSphere machine provider will create the VM. Failure domains are defined in a cluster's config.openshift.io/Infrastructure resource. When balancing machines across failure domains, the control plane machine set will inject configuration from the Infrastructure resource into the machine providerSpec to allocate the machine to a failure domain. type: string + x-kubernetes-list-map-keys: + - name + x-kubernetes-list-type: map x-kubernetes-validations: - - rule: 'has(self.platform) && self.platform == ''VSphere'' ? has(self.vsphere) : !has(self.vsphere)' - message: vsphere configuration is required when platform is VSphere, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''AWS'' ? has(self.aws) : !has(self.aws)' message: aws configuration is required when platform is AWS, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''Azure'' ? has(self.azure) : !has(self.azure)' @@ -346,6 +347,8 @@ spec: message: gcp configuration is required when platform is GCP, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''OpenStack'' ? has(self.openstack) : !has(self.openstack)' message: openstack configuration is required when platform is OpenStack, and forbidden otherwise + - rule: 'has(self.platform) && self.platform == ''VSphere'' ? has(self.vsphere) : !has(self.vsphere)' + message: vsphere configuration is required when platform is VSphere, and forbidden otherwise - rule: 'has(self.platform) && self.platform == ''Nutanix'' ? has(self.nutanix) : !has(self.nutanix)' message: nutanix configuration is required when platform is Nutanix, and forbidden otherwise metadata: