aws / aws/aws-toolkit-azure-devops

AWS native EKS Auth using 'Kubernetes Service Connection'

Open
#299 2 comments 4 reactions 0 assignees View on GitHub
feature-request
Dominant language
TypeScript
Stars
258
Forks
114
PR merge metrics
No merged PRs in 30d

Description

Could we have a 'Kubernetes Service Connection' that supports rotating EKS tokens as they expire.

Given there is a considerable number of plugins that support 'Kubernetes Service Connection' it would be better if you could make a provider for the 'Kubernetes Service Connection' that can use a role from an AWS 'Service Connection' provider to regenerate the token after it expires.

The process for doing this is running aws eks get-token --name $CLUSTER_NAME when assumed as a role that has been directly bound to a system role within Kubernetes.

I currently use the AWS CLI shell plugin to generate this token and pass it to the native helm release / other plugins via environment... We use the AWS Service Connection extensively and VSTS can now use a 'Kubernetes Service Connection' directly for many plugins and features.

It's also worth mentioning all our VSTS agents run EKS and use IAM roles via Kube2IAM

Contributor guide

Open the contributing guide

Research direction

Start by locating the existing AWS Service Connection and Kubernetes Service Connection providers, then review how they pass credentials to Azure DevOps plugins. Compare the required flow with `aws eks get-token --name $CLUSTER_NAME` and role assumption. Done means a Kubernetes connection can use an AWS connection to refresh EKS tokens as they expire.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, kubernetes, typescript
Domain
authentication, cloud, devops
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.