mirror of https://github.com/kubernetes/kops.git
Merge pull request #11861 from johngmyers/bootstrap-simplify
Don't include irrelevant bootstrap addons
This commit is contained in:
commit
21a3e80ce8
|
|
@ -6,6 +6,7 @@ go_library(
|
||||||
importpath = "k8s.io/kops/channels/pkg/api",
|
importpath = "k8s.io/kops/channels/pkg/api",
|
||||||
visibility = ["//visibility:public"],
|
visibility = ["//visibility:public"],
|
||||||
deps = [
|
deps = [
|
||||||
|
"//pkg/values:go_default_library",
|
||||||
"//vendor/github.com/blang/semver/v4:go_default_library",
|
"//vendor/github.com/blang/semver/v4:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
||||||
],
|
],
|
||||||
|
|
|
||||||
|
|
@ -21,6 +21,7 @@ import (
|
||||||
|
|
||||||
"github.com/blang/semver/v4"
|
"github.com/blang/semver/v4"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
|
"k8s.io/kops/pkg/values"
|
||||||
)
|
)
|
||||||
|
|
||||||
type Addons struct {
|
type Addons struct {
|
||||||
|
|
@ -74,7 +75,10 @@ type AddonSpec struct {
|
||||||
|
|
||||||
func (a *Addons) Verify() error {
|
func (a *Addons) Verify() error {
|
||||||
for _, addon := range a.Spec.Addons {
|
for _, addon := range a.Spec.Addons {
|
||||||
if addon != nil && addon.Version != nil && *addon.Version != "" {
|
if addon == nil {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
if addon.Version != nil && *addon.Version != "" {
|
||||||
name := a.ObjectMeta.Name
|
name := a.ObjectMeta.Name
|
||||||
if addon.Name != nil {
|
if addon.Name != nil {
|
||||||
name = *addon.Name
|
name = *addon.Name
|
||||||
|
|
@ -85,6 +89,9 @@ func (a *Addons) Verify() error {
|
||||||
return fmt.Errorf("addon %q has unparseable version %q: %v", name, *addon.Version, err)
|
return fmt.Errorf("addon %q has unparseable version %q: %v", name, *addon.Version, err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if addon.KubernetesVersion != "" {
|
||||||
|
return fmt.Errorf("bootstrap addon %q has a KubernetesVersion", values.StringValue(addon.Name))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
|
|
|
||||||
|
|
@ -622,13 +622,12 @@ func (b *BootstrapChannelBuilder) buildAddons(c *fi.ModelBuilderContext) (*chann
|
||||||
id := "k8s-1.9"
|
id := "k8s-1.9"
|
||||||
|
|
||||||
addons.Spec.Addons = append(addons.Spec.Addons, &channelsapi.AddonSpec{
|
addons.Spec.Addons = append(addons.Spec.Addons, &channelsapi.AddonSpec{
|
||||||
Name: fi.String(key),
|
Name: fi.String(key),
|
||||||
Version: fi.String(version),
|
Version: fi.String(version),
|
||||||
Selector: map[string]string{"k8s-addon": key},
|
Selector: map[string]string{"k8s-addon": key},
|
||||||
Manifest: fi.String(location),
|
Manifest: fi.String(location),
|
||||||
KubernetesVersion: ">=1.9.0",
|
Id: id,
|
||||||
Id: id,
|
NeedsPKI: true,
|
||||||
NeedsPKI: true,
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -984,7 +983,7 @@ func (b *BootstrapChannelBuilder) buildAddons(c *fi.ModelBuilderContext) (*chann
|
||||||
|
|
||||||
if kops.CloudProviderID(b.Cluster.Spec.CloudProvider) == kops.CloudProviderAWS {
|
if kops.CloudProviderID(b.Cluster.Spec.CloudProvider) == kops.CloudProviderAWS {
|
||||||
|
|
||||||
if b.Cluster.Spec.ExternalCloudControllerManager != nil {
|
if b.IsKubernetesGTE("1.18") && b.Cluster.Spec.ExternalCloudControllerManager != nil {
|
||||||
key := "aws-cloud-controller.addons.k8s.io"
|
key := "aws-cloud-controller.addons.k8s.io"
|
||||||
// Version refers to the addon configuration. The CCM tag is given by
|
// Version refers to the addon configuration. The CCM tag is given by
|
||||||
// the template function AWSCCMTag()
|
// the template function AWSCCMTag()
|
||||||
|
|
@ -993,12 +992,11 @@ func (b *BootstrapChannelBuilder) buildAddons(c *fi.ModelBuilderContext) (*chann
|
||||||
id := "k8s-1.18"
|
id := "k8s-1.18"
|
||||||
location := key + "/" + id + ".yaml"
|
location := key + "/" + id + ".yaml"
|
||||||
addons.Spec.Addons = append(addons.Spec.Addons, &channelsapi.AddonSpec{
|
addons.Spec.Addons = append(addons.Spec.Addons, &channelsapi.AddonSpec{
|
||||||
Name: fi.String(key),
|
Name: fi.String(key),
|
||||||
Version: fi.String(version),
|
Version: fi.String(version),
|
||||||
Manifest: fi.String(location),
|
Manifest: fi.String(location),
|
||||||
Selector: map[string]string{"k8s-addon": key},
|
Selector: map[string]string{"k8s-addon": key},
|
||||||
KubernetesVersion: ">=1.18.0",
|
Id: id,
|
||||||
Id: id,
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1010,12 +1008,11 @@ func (b *BootstrapChannelBuilder) buildAddons(c *fi.ModelBuilderContext) (*chann
|
||||||
id := "k8s-1.17"
|
id := "k8s-1.17"
|
||||||
location := key + "/" + id + ".yaml"
|
location := key + "/" + id + ".yaml"
|
||||||
addons.Spec.Addons = append(addons.Spec.Addons, &channelsapi.AddonSpec{
|
addons.Spec.Addons = append(addons.Spec.Addons, &channelsapi.AddonSpec{
|
||||||
Name: fi.String(key),
|
Name: fi.String(key),
|
||||||
Version: fi.String(version),
|
Version: fi.String(version),
|
||||||
Manifest: fi.String(location),
|
Manifest: fi.String(location),
|
||||||
Selector: map[string]string{"k8s-addon": key},
|
Selector: map[string]string{"k8s-addon": key},
|
||||||
KubernetesVersion: ">=1.17.0",
|
Id: id,
|
||||||
Id: id,
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1026,7 +1023,7 @@ func (b *BootstrapChannelBuilder) buildAddons(c *fi.ModelBuilderContext) (*chann
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if b.Cluster.Spec.SnapshotController != nil && fi.BoolValue(b.Cluster.Spec.SnapshotController.Enabled) {
|
if b.IsKubernetesGTE("1.20") && b.Cluster.Spec.SnapshotController != nil && fi.BoolValue(b.Cluster.Spec.SnapshotController.Enabled) {
|
||||||
key := "snapshot-controller.addons.k8s.io"
|
key := "snapshot-controller.addons.k8s.io"
|
||||||
|
|
||||||
version := "4.0.0-kops.1"
|
version := "4.0.0-kops.1"
|
||||||
|
|
@ -1034,13 +1031,12 @@ func (b *BootstrapChannelBuilder) buildAddons(c *fi.ModelBuilderContext) (*chann
|
||||||
id := "k8s-1.20"
|
id := "k8s-1.20"
|
||||||
location := key + "/" + id + ".yaml"
|
location := key + "/" + id + ".yaml"
|
||||||
addons.Spec.Addons = append(addons.Spec.Addons, &channelsapi.AddonSpec{
|
addons.Spec.Addons = append(addons.Spec.Addons, &channelsapi.AddonSpec{
|
||||||
Name: fi.String(key),
|
Name: fi.String(key),
|
||||||
Version: fi.String(version),
|
Version: fi.String(version),
|
||||||
Manifest: fi.String(location),
|
Manifest: fi.String(location),
|
||||||
Selector: map[string]string{"k8s-addon": key},
|
Selector: map[string]string{"k8s-addon": key},
|
||||||
KubernetesVersion: ">=1.20.0",
|
NeedsPKI: true,
|
||||||
NeedsPKI: true,
|
Id: id,
|
||||||
Id: id,
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -53,7 +53,6 @@ spec:
|
||||||
k8s-addon: storage-aws.addons.k8s.io
|
k8s-addon: storage-aws.addons.k8s.io
|
||||||
version: 1.17.0
|
version: 1.17.0
|
||||||
- id: k8s-1.18
|
- id: k8s-1.18
|
||||||
kubernetesVersion: '>=1.18.0'
|
|
||||||
manifest: aws-cloud-controller.addons.k8s.io/k8s-1.18.yaml
|
manifest: aws-cloud-controller.addons.k8s.io/k8s-1.18.yaml
|
||||||
manifestHash: 802a42830a525a9083c80e2ad58efb72ea34945e
|
manifestHash: 802a42830a525a9083c80e2ad58efb72ea34945e
|
||||||
name: aws-cloud-controller.addons.k8s.io
|
name: aws-cloud-controller.addons.k8s.io
|
||||||
|
|
@ -61,7 +60,6 @@ spec:
|
||||||
k8s-addon: aws-cloud-controller.addons.k8s.io
|
k8s-addon: aws-cloud-controller.addons.k8s.io
|
||||||
version: 1.18.0-kops.1
|
version: 1.18.0-kops.1
|
||||||
- id: k8s-1.17
|
- id: k8s-1.17
|
||||||
kubernetesVersion: '>=1.17.0'
|
|
||||||
manifest: aws-ebs-csi-driver.addons.k8s.io/k8s-1.17.yaml
|
manifest: aws-ebs-csi-driver.addons.k8s.io/k8s-1.17.yaml
|
||||||
manifestHash: 59c7723a8a9271558c6a87ccb0f0c61c2e36c6ed
|
manifestHash: 59c7723a8a9271558c6a87ccb0f0c61c2e36c6ed
|
||||||
name: aws-ebs-csi-driver.addons.k8s.io
|
name: aws-ebs-csi-driver.addons.k8s.io
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue