mirror of https://github.com/kubernetes/kops.git
Enable GCP PD CSI driver by default in k8s 1.23
This commit is contained in:
parent
89c392d809
commit
f22545e885
|
|
@ -16,6 +16,7 @@ go_library(
|
|||
"discovery.go",
|
||||
"docker.go",
|
||||
"etcd.go",
|
||||
"gcppdcsidriver.go",
|
||||
"kubecontrollermanager.go",
|
||||
"kubedns.go",
|
||||
"kubelet.go",
|
||||
|
|
|
|||
|
|
@ -0,0 +1,46 @@
|
|||
/*
|
||||
Copyright 2020 The Kubernetes Authors.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
|
||||
package components
|
||||
|
||||
import (
|
||||
"k8s.io/kops/pkg/apis/kops"
|
||||
"k8s.io/kops/upup/pkg/fi"
|
||||
"k8s.io/kops/upup/pkg/fi/loader"
|
||||
)
|
||||
|
||||
// GCPPDCSIDriverOptionsBuilder adds options for the GCP PD CSI driver to the model
|
||||
type GCPPDCSIDriverOptionsBuilder struct {
|
||||
*OptionsContext
|
||||
}
|
||||
|
||||
var _ loader.OptionsBuilder = &GCPPDCSIDriverOptionsBuilder{}
|
||||
|
||||
func (b *GCPPDCSIDriverOptionsBuilder) BuildOptions(o interface{}) error {
|
||||
clusterSpec := o.(*kops.ClusterSpec)
|
||||
if kops.CloudProviderID(clusterSpec.CloudProvider) != kops.CloudProviderGCE {
|
||||
return nil
|
||||
}
|
||||
|
||||
cc := clusterSpec.CloudConfig
|
||||
if cc.GCPPDCSIDriver == nil {
|
||||
cc.GCPPDCSIDriver = &kops.GCPPDCSIDriver{
|
||||
Enabled: fi.Bool(b.IsKubernetesGTE("1.23")),
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
|
@ -749,6 +749,20 @@ func (b *BootstrapChannelBuilder) buildAddons(c *fi.ModelBuilderContext) (*Addon
|
|||
Id: id,
|
||||
})
|
||||
}
|
||||
|
||||
if b.Cluster.Spec.CloudConfig != nil && b.Cluster.Spec.CloudConfig.GCPPDCSIDriver != nil && fi.BoolValue(b.Cluster.Spec.CloudConfig.GCPPDCSIDriver.Enabled) {
|
||||
key := "gcp-pd-csi-driver.addons.k8s.io"
|
||||
{
|
||||
id := "k8s-1.23"
|
||||
location := key + "/" + id + ".yaml"
|
||||
addons.Add(&channelsapi.AddonSpec{
|
||||
Name: fi.String(key),
|
||||
Manifest: fi.String(location),
|
||||
Selector: map[string]string{"k8s-addon": key},
|
||||
Id: id,
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if featureflag.Spotinst.Enabled() && featureflag.SpotinstController.Enabled() {
|
||||
|
|
|
|||
|
|
@ -282,6 +282,7 @@ func (c *populateClusterSpec) run(clientset simple.Clientset) error {
|
|||
codeModels = append(codeModels, &components.NodeProblemDetectorOptionsBuilder{OptionsContext: optionsContext})
|
||||
codeModels = append(codeModels, &components.AWSEBSCSIDriverOptionsBuilder{OptionsContext: optionsContext})
|
||||
codeModels = append(codeModels, &components.AWSCloudControllerManagerOptionsBuilder{OptionsContext: optionsContext})
|
||||
codeModels = append(codeModels, &components.GCPPDCSIDriverOptionsBuilder{OptionsContext: optionsContext})
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue