Skip to content

Use the EKS default Kubernetes version when --version is not set - #8905

Merged
naclonts merged 1 commit into
eksctl-io:mainfrom
naclonts:feat/use-api-default-version
Oct 14, 2026
Merged

naclonts merged 1 commit into
eksctl-io:mainfrom
naclonts:feat/use-api-default-version

Conversation

@naclonts

@naclonts naclonts commented Oct 14, 2026 •

Copy link
Copy Markdown
Member

Description

create cluster now defaults to the version EKS flags as default in DescribeClusterVersions, instead of the hardcoded api.DefaultVersion (1.34), which is removed. No more PRs like #8645 to bump the default.

If EKS flags no default, create cluster asks for an explicit --version.

Tested in us-west-2: create cluster with flags and with -f, both without a version, came up on 1.36 (the current EKS default).

Checklist

  • Added tests that cover your change (if possible)
  • Added/modified documentation as required (such as the README.md, or the userdocs directory)
  • Manually tested
  • Made sure the title of the PR is a good description that can go into the release notes
  • (Core team) Added labels for change area (e.g. area/nodegroup) and kind (e.g. kind/improvement)

DescribeClusterVersions already reports which version EKS treats as the
default, but create cluster ignored it and always used the hardcoded
api.DefaultVersion. eksctl now takes the default version only from
DescribeClusterVersions: api.DefaultVersion is removed and
NewClusterConfig no longer seeds metadata.version, so both the flag path
and config files without metadata.version resolve to the EKS default.

If EKS does not flag a default, create cluster without a version,
--version auto and create nodegroup --version=default fail and ask for an
explicit version. Other commands that go through NewCtl, such as get
cluster, utils describe-cluster-versions, utils describe-addon-versions
and the delete cluster --force fallback, keep working.

utils migrate-to-pod-identity now looks up the pod identity agent addon
for the cluster's version instead of the previously seeded default.

The integration tests' -eksctl.version flag now defaults to the EKS
default version, resolved without panicking when it cannot be looked up.

Signed-off-by: Nathan Clonts <nclonts@amazon.com>
@naclonts
naclonts enabled auto-merge (squash) October 14, 2026 19:54
@naclonts
naclonts merged commit b2af24b into eksctl-io:main Oct 14, 2026
10 of 12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants