From f63a5d3911130949487892131ee2034350dd9e3a Mon Sep 17 00:00:00 2001 From: "Steven E. Harris" Date: Fri, 22 Jan 2021 17:18:42 -0500 Subject: [PATCH] Define "ManageStorageClasses" cloud config field --- k8s/crds/kops.k8s.io_clusters.yaml | 5 +++++ pkg/apis/kops/componentconfig.go | 6 ++++++ pkg/apis/kops/v1alpha2/componentconfig.go | 6 ++++++ pkg/apis/kops/v1alpha2/zz_generated.conversion.go | 2 ++ pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go | 5 +++++ pkg/apis/kops/zz_generated.deepcopy.go | 5 +++++ 6 files changed, 29 insertions(+) diff --git a/k8s/crds/kops.k8s.io_clusters.yaml b/k8s/crds/kops.k8s.io_clusters.yaml index de36956782..f457e225fd 100644 --- a/k8s/crds/kops.k8s.io_clusters.yaml +++ b/k8s/crds/kops.k8s.io_clusters.yaml @@ -277,6 +277,11 @@ spec: description: GCEServiceAccount specifies the service account with which the GCE VM runs type: string + manageStorageClasses: + description: ManageStorageClasses specifies whether kOps should + create and maintain a set of StorageClasses, one of which it + nominates as the default class for the cluster. + type: boolean multizone: description: GCE cloud-config options type: boolean diff --git a/pkg/apis/kops/componentconfig.go b/pkg/apis/kops/componentconfig.go index 9c4fe2b56f..2ea102ee96 100644 --- a/pkg/apis/kops/componentconfig.go +++ b/pkg/apis/kops/componentconfig.go @@ -792,6 +792,12 @@ type AzureConfiguration struct { // CloudConfiguration defines the cloud provider configuration type CloudConfiguration struct { + // Cross-cloud provider options + + // ManageStorageClasses specifies whether kOps should create and maintain a set of + // StorageClasses, one of which it nominates as the default class for the cluster. + ManageStorageClasses *bool `json:"manageStorageClasses,omitempty"` + // GCE cloud-config options Multizone *bool `json:"multizone,omitempty"` NodeTags *string `json:"nodeTags,omitempty"` diff --git a/pkg/apis/kops/v1alpha2/componentconfig.go b/pkg/apis/kops/v1alpha2/componentconfig.go index 4a02f0da0a..435bdd58aa 100644 --- a/pkg/apis/kops/v1alpha2/componentconfig.go +++ b/pkg/apis/kops/v1alpha2/componentconfig.go @@ -791,6 +791,12 @@ type AzureConfiguration struct { // CloudConfiguration defines the cloud provider configuration type CloudConfiguration struct { + // Cross-cloud provider options + + // ManageStorageClasses specifies whether kOps should create and maintain a set of + // StorageClasses, one of which it nominates as the default class for the cluster. + ManageStorageClasses *bool `json:"manageStorageClasses,omitempty"` + // GCE cloud-config options Multizone *bool `json:"multizone,omitempty"` NodeTags *string `json:"nodeTags,omitempty"` diff --git a/pkg/apis/kops/v1alpha2/zz_generated.conversion.go b/pkg/apis/kops/v1alpha2/zz_generated.conversion.go index 028c938311..bbfdc90843 100644 --- a/pkg/apis/kops/v1alpha2/zz_generated.conversion.go +++ b/pkg/apis/kops/v1alpha2/zz_generated.conversion.go @@ -1827,6 +1827,7 @@ func Convert_kops_ClassicNetworkingSpec_To_v1alpha2_ClassicNetworkingSpec(in *ko } func autoConvert_v1alpha2_CloudConfiguration_To_kops_CloudConfiguration(in *CloudConfiguration, out *kops.CloudConfiguration, s conversion.Scope) error { + out.ManageStorageClasses = in.ManageStorageClasses out.Multizone = in.Multizone out.NodeTags = in.NodeTags out.NodeInstancePrefix = in.NodeInstancePrefix @@ -1878,6 +1879,7 @@ func Convert_v1alpha2_CloudConfiguration_To_kops_CloudConfiguration(in *CloudCon } func autoConvert_kops_CloudConfiguration_To_v1alpha2_CloudConfiguration(in *kops.CloudConfiguration, out *CloudConfiguration, s conversion.Scope) error { + out.ManageStorageClasses = in.ManageStorageClasses out.Multizone = in.Multizone out.NodeTags = in.NodeTags out.NodeInstancePrefix = in.NodeInstancePrefix diff --git a/pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go b/pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go index 67964d082a..1a8a7c5a4d 100644 --- a/pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go +++ b/pkg/apis/kops/v1alpha2/zz_generated.deepcopy.go @@ -512,6 +512,11 @@ func (in *ClassicNetworkingSpec) DeepCopy() *ClassicNetworkingSpec { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CloudConfiguration) DeepCopyInto(out *CloudConfiguration) { *out = *in + if in.ManageStorageClasses != nil { + in, out := &in.ManageStorageClasses, &out.ManageStorageClasses + *out = new(bool) + **out = **in + } if in.Multizone != nil { in, out := &in.Multizone, &out.Multizone *out = new(bool) diff --git a/pkg/apis/kops/zz_generated.deepcopy.go b/pkg/apis/kops/zz_generated.deepcopy.go index fce98e509e..5baf5668f6 100644 --- a/pkg/apis/kops/zz_generated.deepcopy.go +++ b/pkg/apis/kops/zz_generated.deepcopy.go @@ -612,6 +612,11 @@ func (in *ClassicNetworkingSpec) DeepCopy() *ClassicNetworkingSpec { // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *CloudConfiguration) DeepCopyInto(out *CloudConfiguration) { *out = *in + if in.ManageStorageClasses != nil { + in, out := &in.ManageStorageClasses, &out.ManageStorageClasses + *out = new(bool) + **out = **in + } if in.Multizone != nil { in, out := &in.Multizone, &out.Multizone *out = new(bool)