EKS: Add Uploading Helm Charts to ECR Capability
- Dominant language
- TypeScript
- Stars
- 12.9k
- Forks
- 4.6k
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 83
Description
### Describe the feature
For fully private EKS clusters, helm charts for things like istio and the `aws-load-balancer-controller` need to placed somewhere like ECR. The Kubectl function already contains the helm binary for applying helm charts. It would be great if functionality could be added to push helm charts to ECR so that users don't need to create their own Lambda layer and function just to achieve that functionality.
### Use Case
For fully private EKS clusters, not having to create and manage a separate function to do `helm push` would help speed up development time and remove some ambiguity about the best way to host helm charts for private clusters.
### Proposed Solution
Since helm is already in the Kubectl function, add a new construct for pushing a helm chart to ECR. The helm chart would be in s3, get pulled to the Lambda function, then pushed to ECR using OCI.
### Other Information
_No response_
### Acknowledgements
- [X] I may be able to implement this feature request
- [ ] This feature might incur a breaking change
### CDK version used
2.138.0
### Environment details (OS name and version, etc.)
darwin
Contributor guide
Research direction
Start with the existing Kubectl function and its Helm binary, then trace how the proposed construct should retrieve a chart from S3 and interact with ECR. Done means a construct can pull an S3-hosted Helm chart into Lambda and push it to ECR using OCI, with tests covering that workflow.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, kubernetes, typescript
- Domain
- cloud, infrastructure
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100