EKS Helm Deploy
Type: DEVRAMPS:EKS:HELM
Category: deploy
Version: 1.0.0
Description
Deploy applications to EKS using Helm charts.
Deploys or upgrades a Helm release to an Amazon EKS cluster. Supports local charts from the repository or remote charts from Helm repositories. Can override values via files or individual --set arguments. Waits for release completion and supports atomic rollback on failure.
Parameters
Required Parameters
| Parameter | Type | Description |
|---|---|---|
cluster_name | string | Name of the EKS cluster. |
namespace | string | Kubernetes namespace for the release. |
release_name | string | Helm release name. |
Optional Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
account_id | string | - | AWS account ID where the EKS cluster is located. Defaults to stage account. |
region | string | - | AWS region. Defaults to stage region. |
chart_path | string | - | Path to chart directory in repository. |
chart_repository | string | - | Helm repository URL. |
chart_name | string | - | Chart name from repository. |
chart_version | string | - | Chart version to deploy. |
values_file | string | - | Path to values.yaml file in repository. |
set_values | object | - | Key-value pairs for --set arguments. |
set | array<object> | - | Image values to set (convenience helper). |
timeout | integer | 10 | Deployment timeout in minutes. |
atomic | boolean | true | Automatically rollback on failure. |
create_namespace | boolean | false | Create namespace if it doesn't exist. |
Example Usage
- type: DEVRAMPS:EKS:HELM
name: Deploy with Helm
params:
cluster_name: my-cluster
namespace: myapp
release_name: myapp-production
chart_path: ./charts/myapp
values_file: ./charts/myapp/values-prod.yaml
set:
- value_path: image.tag
value: "${{ stage.artifacts["App Image"].image_tag }}"
timeout: 15
atomic: true