Skip to content

Add eksctl proxy command#401

Open
gtsiolis wants to merge 4 commits into
mainfrom
pro-367-add-eksctl-proxy-commands-for-localstack-1150
Open

Add eksctl proxy command#401
gtsiolis wants to merge 4 commits into
mainfrom
pro-367-add-eksctl-proxy-commands-for-localstack-1150

Conversation

@gtsiolis

@gtsiolis gtsiolis commented Jul 22, 2026

Copy link
Copy Markdown
Member

Adds lstk eksctl, a proxy that runs the installed eksctl binary against the running LocalStack AWS emulator. It replaces the manual endpoint exports from LocalStack's eksctl integration guide with:

lstk eksctl create cluster --nodes 1

The proxy:

  • requires eksctl 0.181.0 or newer and fails closed when its version cannot be determined or parsed
  • resolves the running AWS emulator and injects the CloudFormation, EC2, EKS, ELB, ELBv2, IAM, and STS endpoint variables plus AWS_ENDPOINT_URL
  • honors an explicit AWS_ENDPOINT_URL, while removing inherited service-specific endpoint overrides and forcing configured endpoints to remain enabled so requests cannot fall through to real AWS
  • strips inherited AWS profiles and session tokens, defaults credentials only when missing or empty, and derives a consistent AWS_REGION/AWS_DEFAULT_REGION pair from either user-provided region
  • forwards arguments, stdio, exit codes, and signals through the same process runner used by the other wrapped tools
  • lets version, info, completion, and genuine help requests run without Docker, a running emulator, or the version gate
  • supports LSTK_EKSCTL_CMD for selecting a different eksctl binary

The command is registered in the Tools group and documented in the README. Unit and integration coverage exercises version gating, help/offline classification, environment isolation, endpoint and region precedence, emulator/runtime gates, argument and JSON flag forwarding, exit codes, and the Docker-backed command path.

eksctl support in LocalStack is experimental, and EKS requires the Ultimate plan.

Closes PRO-367

@gtsiolis gtsiolis self-assigned this Jul 22, 2026
@gtsiolis gtsiolis changed the title Add eksctl proxy command for LocalStack Add eksctl proxy command Jul 22, 2026
@gtsiolis gtsiolis added semver: minor docs: needed Pull request requires documentation updates labels Jul 22, 2026
@gtsiolis
gtsiolis force-pushed the pro-367-add-eksctl-proxy-commands-for-localstack-1150 branch from 3953561 to 21797ad Compare July 22, 2026 09:36
@gtsiolis
gtsiolis marked this pull request as ready for review July 22, 2026 10:11
@gtsiolis
gtsiolis requested a review from a team as a code owner July 22, 2026 10:11

@nik-localstack nik-localstack left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice!
I tested it locally with a few simple flows and it works nice.
I cannot comment a lot on the code but in general it looks good to me.

Comment thread README.md Outdated
@gtsiolis
gtsiolis force-pushed the pro-367-add-eksctl-proxy-commands-for-localstack-1150 branch from 0939c3e to fe78b58 Compare July 22, 2026 14:21
gtsiolis and others added 4 commits July 22, 2026 17:22
Co-authored-by: linear-code[bot] <222613912+linear-code[bot]@users.noreply.github.com>
…rage

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
@gtsiolis
gtsiolis force-pushed the pro-367-add-eksctl-proxy-commands-for-localstack-1150 branch from fe78b58 to 0ef9ce7 Compare July 22, 2026 14:22
@gtsiolis
gtsiolis requested a review from peter-smith-phd July 22, 2026 17:02

@peter-smith-phd peter-smith-phd left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm happy with the general idea of adding eksctl, although I do want to see a strategy on how to handle service-specific tools like this. EKS is just one of 100+ services we support, so I don't feel it deserves a top-level command in lstk.

Before I'd be comfortable with this, I'd like to see our lstk design approach for handling service-specific tooling.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs: needed Pull request requires documentation updates semver: minor

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants