diff --git a/docs/release_notes/0.189.0.md b/docs/release_notes/0.189.0.md new file mode 100644 index 0000000000..3e86418441 --- /dev/null +++ b/docs/release_notes/0.189.0.md @@ -0,0 +1,12 @@ +# Release v0.189.0 + +## 🐛 Bug Fixes + +- Skip creating OIDC manager for Outposts clusters (#7934) +- Fixes segfault when VPC CNI is disabled (#7927) +- Fix SSM unit tests (#7935) + +## Acknowledgments + +The eksctl maintainers would like to sincerely thank @EmmEff. + diff --git a/go.mod b/go.mod index cc36aad6f9..5db12ca8ad 100644 --- a/go.mod +++ b/go.mod @@ -168,7 +168,7 @@ require ( github.com/distribution/reference v0.6.0 // indirect github.com/docker/cli v25.0.1+incompatible // indirect github.com/docker/distribution v2.8.3+incompatible // indirect - github.com/docker/docker v26.1.4+incompatible // indirect + github.com/docker/docker v26.1.5+incompatible // indirect github.com/docker/docker-credential-helpers v0.8.0 // indirect github.com/docker/go-connections v0.5.0 // indirect github.com/docker/go-metrics v0.0.1 // indirect diff --git a/go.sum b/go.sum index cf0f988197..00367f1ba1 100644 --- a/go.sum +++ b/go.sum @@ -917,8 +917,8 @@ github.com/docker/cli v25.0.1+incompatible h1:mFpqnrS6Hsm3v1k7Wa/BO23oz0k121MTbT github.com/docker/cli v25.0.1+incompatible/go.mod h1:JLrzqnKDaYBop7H2jaqPtU4hHvMKP+vjCwu2uszcLI8= github.com/docker/distribution v2.8.3+incompatible h1:AtKxIZ36LoNK51+Z6RpzLpddBirtxJnzDrHLEKxTAYk= github.com/docker/distribution v2.8.3+incompatible/go.mod h1:J2gT2udsDAN96Uj4KfcMRqY0/ypR+oyYUYmja8H+y+w= -github.com/docker/docker v26.1.4+incompatible h1:vuTpXDuoga+Z38m1OZHzl7NKisKWaWlhjQk7IDPSLsU= -github.com/docker/docker v26.1.4+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= +github.com/docker/docker v26.1.5+incompatible h1:NEAxTwEjxV6VbBMBoGG3zPqbiJosIApZjxlbrG9q3/g= +github.com/docker/docker v26.1.5+incompatible/go.mod h1:eEKB0N0r5NX/I1kEveEz05bcu8tLC/8azJZsviup8Sk= github.com/docker/docker-credential-helpers v0.8.0 h1:YQFtbBQb4VrpoPxhFuzEBPQ9E16qz5SpHLS+uswaCp8= github.com/docker/docker-credential-helpers v0.8.0/go.mod h1:UGFXcuoQ5TxPiB54nHOZ32AWRqQdECoh/Mg0AlEYb40= github.com/docker/go-connections v0.5.0 h1:USnMq7hx7gwdVZq1L49hLXaFtUdTADjXGp+uj1Br63c= diff --git a/pkg/actions/addon/tasks.go b/pkg/actions/addon/tasks.go index 7fafd2ab77..f4478c8620 100644 --- a/pkg/actions/addon/tasks.go +++ b/pkg/actions/addon/tasks.go @@ -14,6 +14,7 @@ import ( api "github.com/weaveworks/eksctl/pkg/apis/eksctl.io/v1alpha5" "github.com/weaveworks/eksctl/pkg/eks" + iamoidc "github.com/weaveworks/eksctl/pkg/iam/oidc" "github.com/weaveworks/eksctl/pkg/utils/tasks" ) @@ -183,14 +184,20 @@ func (t *createAddonTask) Do(errorCh chan error) error { } func createAddonManager(ctx context.Context, clusterProvider *eks.ClusterProvider, cfg *api.ClusterConfig) (*Manager, error) { - oidc, err := clusterProvider.NewOpenIDConnectManager(ctx, cfg) - if err != nil { - return nil, err - } - - oidcProviderExists, err := oidc.CheckProviderExists(ctx) - if err != nil { - return nil, err + var ( + oidc *iamoidc.OpenIDConnectManager + oidcProviderExists bool + ) + if api.IsEnabled(cfg.IAM.WithOIDC) { + var err error + oidc, err = clusterProvider.NewOpenIDConnectManager(ctx, cfg) + if err != nil { + return nil, err + } + oidcProviderExists, err = oidc.CheckProviderExists(ctx) + if err != nil { + return nil, err + } } stackManager := clusterProvider.NewStackManager(cfg) diff --git a/pkg/ami/ssm_resolver_test.go b/pkg/ami/ssm_resolver_test.go index 7ae0084b42..ffb23cdabf 100644 --- a/pkg/ami/ssm_resolver_test.go +++ b/pkg/ami/ssm_resolver_test.go @@ -601,7 +601,9 @@ var _ = Describe("AMI Auto Resolution", func() { It("should support SSM parameter generation for all AMI types but Windows", func() { var eksAMIType ekstypes.AMITypes for _, amiType := range eksAMIType.Values() { - if amiType == ekstypes.AMITypesCustom || strings.HasPrefix(string(amiType), "WINDOWS_") { + if amiType == ekstypes.AMITypesCustom || strings.HasPrefix(string(amiType), "WINDOWS_") || + // TODO: remove this condition after adding support for AL2023 Nvidia and Neuron AMI types. + amiType == ekstypes.AMITypesAl2023X8664Nvidia || amiType == ekstypes.AMITypesAl2023X8664Neuron { continue } ssmParameterName := MakeManagedSSMParameterName(api.LatestVersion, amiType) diff --git a/pkg/ctl/cmdutils/configfile.go b/pkg/ctl/cmdutils/configfile.go index 91161953c9..5e08c50440 100644 --- a/pkg/ctl/cmdutils/configfile.go +++ b/pkg/ctl/cmdutils/configfile.go @@ -463,7 +463,7 @@ func validateBareCluster(clusterConfig *api.ClusterConfig) error { return nil } if clusterConfig.HasNodes() || clusterConfig.IsFargateEnabled() || clusterConfig.Karpenter != nil || clusterConfig.HasGitOpsFluxConfigured() || - (clusterConfig.IAM != nil && (len(clusterConfig.IAM.ServiceAccounts) > 0) || len(clusterConfig.IAM.PodIdentityAssociations) > 0) { + (clusterConfig.IAM != nil && ((len(clusterConfig.IAM.ServiceAccounts) > 0) || len(clusterConfig.IAM.PodIdentityAssociations) > 0)) { return errors.New("fields nodeGroups, managedNodeGroups, fargateProfiles, karpenter, gitops, iam.serviceAccounts, " + "and iam.podIdentityAssociations are not supported during cluster creation in a cluster without VPC CNI; please remove these fields " + "and add them back after cluster creation is successful") diff --git a/pkg/version/release.go b/pkg/version/release.go index df134fa310..46298477dd 100644 --- a/pkg/version/release.go +++ b/pkg/version/release.go @@ -3,7 +3,7 @@ package version // This file was generated by release_generate.go; DO NOT EDIT. // Version is the version number in semver format X.Y.Z -var Version = "0.189.0" +var Version = "0.190.0" // PreReleaseID can be empty for releases, "rc.X" for release candidates and "dev" for snapshots var PreReleaseID = "dev"