Skip to content

Commit 622f4fe

Browse files
Merge pull request #7503 from yuxiang-zhang/update-karpenter-config-for-v0.33
Expand Karpenter settings.aws block to settings for v0.33.0 and greater
2 parents 9575570 + f75c48e commit 622f4fe

File tree

2 files changed

+29
-7
lines changed

2 files changed

+29
-7
lines changed

pkg/karpenter/karpenter.go

+14-7
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import (
99

1010
api "github.com/weaveworks/eksctl/pkg/apis/eksctl.io/v1alpha5"
1111
"github.com/weaveworks/eksctl/pkg/karpenter/providers"
12+
"github.com/weaveworks/eksctl/pkg/utils"
1213
)
1314

1415
const (
@@ -78,16 +79,22 @@ func (k *Installer) Install(ctx context.Context, serviceAccountRoleARN string, i
7879
defaultInstanceProfile: instanceProfileName,
7980
},
8081
settings: map[string]interface{}{
81-
aws: map[string]interface{}{
82-
defaultInstanceProfile: instanceProfileName,
83-
clusterName: k.ClusterConfig.Metadata.Name,
84-
clusterEndpoint: k.ClusterConfig.Status.Endpoint,
85-
interruptionQueueName: k.ClusterConfig.Metadata.Name,
86-
},
82+
defaultInstanceProfile: instanceProfileName,
83+
clusterName: k.ClusterConfig.Metadata.Name,
84+
clusterEndpoint: k.ClusterConfig.Status.Endpoint,
85+
interruptionQueueName: k.ClusterConfig.Metadata.Name,
8786
},
8887
serviceAccount: serviceAccountMap,
8988
}
9089

90+
version := k.ClusterConfig.Karpenter.Version
91+
compareVersions, err := utils.CompareVersions(version, "0.33.0")
92+
if err == nil && compareVersions < 0 {
93+
values[settings] = map[string]interface{}{
94+
aws: values[settings],
95+
}
96+
}
97+
9198
registryClient, err := registry.NewClient(
9299
registry.ClientOptEnableCache(true),
93100
)
@@ -101,7 +108,7 @@ func (k *Installer) Install(ctx context.Context, serviceAccountRoleARN string, i
101108
Namespace: DefaultNamespace,
102109
ReleaseName: releaseName,
103110
Values: values,
104-
Version: k.ClusterConfig.Karpenter.Version,
111+
Version: version,
105112
RegistryClient: registryClient,
106113
}
107114

pkg/karpenter/karpenter_test.go

+15
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,21 @@ var _ = Describe("Install", func() {
8181
}))
8282
})
8383

84+
It("installs karpenter with expanded settings.aws values for version greater or equal to v0.33.0", func() {
85+
installerUnderTest.Options.ClusterConfig.Karpenter.Version = "0.33.0"
86+
Expect(installerUnderTest.Install(context.Background(), "dummy", "dummy")).To(Succeed())
87+
_, opts := fakeHelmInstaller.InstallChartArgsForCall(0)
88+
values := map[string]interface{}{
89+
settings: map[string]interface{}{
90+
defaultInstanceProfile: "dummy",
91+
clusterName: cfg.Metadata.Name,
92+
clusterEndpoint: cfg.Status.Endpoint,
93+
interruptionQueueName: cfg.Metadata.Name,
94+
},
95+
}
96+
Expect(opts.Values[settings]).To(Equal(values[settings]))
97+
})
98+
8499
When("install chart fails", func() {
85100

86101
BeforeEach(func() {

0 commit comments

Comments
 (0)