Skip to content

Commit 08b2097

Browse files
🔧 Update action.yml file to compatiable with new version
1 parent 9143186 commit 08b2097

File tree

1 file changed

+34
-137
lines changed

1 file changed

+34
-137
lines changed

action.yml

Lines changed: 34 additions & 137 deletions
Original file line numberDiff line numberDiff line change
@@ -1,177 +1,74 @@
11
name: 'EKS Helm Client'
2-
description: 'Helm client to install and upgrade Helm chart on EKS cluster'
3-
author: 'ProjectOSS(Dinush Chathurya)'
2+
description: 'Helm client to install and upgrade Helm chart on EKS cluster with support for private clusters and repositories'
3+
author: 'Open Source Sri Lanka'
44
branding:
55
icon: 'upload-cloud'
66
color: 'blue'
77

8+
runs:
9+
using: 'docker'
10+
image: 'Dockerfile'
11+
812
inputs:
9-
# Core Configuration
13+
args:
14+
description: 'Commands to install and upgrade Helm chart'
15+
required: true
16+
1017
cluster-name:
1118
description: 'EKS cluster name'
12-
required: true
19+
required: false
1320

1421
region:
1522
description: 'AWS region where the EKS cluster is located'
16-
required: true
17-
18-
# Helm Commands
19-
helm-commands:
20-
description: 'Helm commands to execute (replaces args for clarity)'
21-
required: true
22-
23-
# Authentication & Access
24-
role-arn:
25-
description: 'IAM role ARN to assume for cluster access (for IRSA or cross-account access)'
2623
required: false
2724

28-
assume-role-session-name:
29-
description: 'Session name when assuming role'
30-
required: false
31-
default: 'github-actions-helm-deploy'
32-
33-
# Private Cluster Support
3425
private-cluster:
35-
description: 'Set to true if cluster is private (enables additional networking considerations)'
26+
description: 'Set to true if EKS cluster is private (default: false)'
3627
required: false
3728
default: 'false'
3829

39-
bastion-host:
40-
description: 'Bastion host for private cluster access (if applicable)'
41-
required: false
42-
43-
bastion-user:
44-
description: 'Username for bastion host access'
30+
helm-registry-url:
31+
description: 'Private Helm registry URL'
4532
required: false
46-
default: 'ec2-user'
4733

48-
vpc-endpoint:
49-
description: 'VPC endpoint URL for private API access'
34+
helm-registry-username:
35+
description: 'Username for private Helm registry'
5036
required: false
5137

52-
# Private Helm Repository Support
53-
private-registry-url:
54-
description: 'URL of private Helm registry (supports OCI and traditional repositories)'
38+
helm-registry-password:
39+
description: 'Password for private Helm registry'
5540
required: false
5641

57-
private-registry-username:
58-
description: 'Username for private registry authentication'
59-
required: false
60-
61-
private-registry-password:
62-
description: 'Password for private registry authentication (use secrets)'
63-
required: false
64-
65-
private-registry-username-secret:
66-
description: 'AWS Secrets Manager secret name containing registry username'
67-
required: false
68-
69-
private-registry-password-secret:
70-
description: 'AWS Secrets Manager secret name containing registry password'
71-
required: false
72-
73-
ecr-registry:
74-
description: 'AWS ECR registry URL (e.g., 123456789012.dkr.ecr.us-west-2.amazonaws.com)'
75-
required: false
76-
77-
auto-login-ecr:
78-
description: 'Automatically login to AWS ECR for private charts'
42+
helm-registry-insecure:
43+
description: 'Allow insecure connection to Helm registry (default: false)'
7944
required: false
8045
default: 'false'
8146

82-
github-packages-token:
83-
description: 'GitHub token for accessing GitHub Container Registry packages'
84-
required: false
85-
86-
additional-registries:
87-
description: 'JSON array of additional private registries [{url, username, password}]'
47+
kubectl-version:
48+
description: 'Kubectl version to use (default: 1.28.4)'
8849
required: false
50+
default: '1.28.4'
8951

90-
# Helm Configuration
91-
namespace:
92-
description: 'Kubernetes namespace for Helm operations'
52+
helm-version:
53+
description: 'Helm version to use (default: 3.13.3)'
9354
required: false
94-
default: 'default'
95-
96-
create-namespace:
97-
description: 'Create namespace if it does not exist'
98-
required: false
99-
default: 'false'
55+
default: '3.13.3'
10056

10157
timeout:
102-
description: 'Timeout for Helm operations (e.g., 10m0s)'
58+
description: 'Timeout for kubectl and helm operations in seconds (default: 300)'
10359
required: false
104-
default: '5m0s'
60+
default: '300'
10561

106-
atomic:
107-
description: 'Use atomic flag for Helm operations (rollback on failure)'
108-
required: false
109-
default: 'true'
110-
111-
wait:
112-
description: 'Wait for Helm release to be ready'
113-
required: false
114-
default: 'true'
115-
116-
# Security Options
117-
verify-charts:
118-
description: 'Verify Helm chart signatures'
119-
required: false
120-
default: 'false'
121-
122-
enable-secrets-manager:
123-
description: 'Enable AWS Secrets Manager integration'
124-
required: false
125-
default: 'false'
126-
127-
secrets-manager-region:
128-
description: 'AWS region for Secrets Manager (defaults to cluster region)'
129-
required: false
130-
131-
# Debugging & Logging
13262
debug:
133-
description: 'Enable debug logging'
63+
description: 'Enable debug logging (default: false)'
13464
required: false
13565
default: 'false'
13666

137-
dry-run:
138-
description: 'Perform a dry run (helm template + kubectl dry-run)'
67+
kubeconfig-path:
68+
description: 'Custom path for kubeconfig file'
13969
required: false
140-
default: 'false'
14170

142-
# Validation
143-
validate-manifests:
144-
description: 'Validate Kubernetes manifests before deployment'
145-
required: false
146-
default: 'true'
147-
148-
kubeval-schema-location:
149-
description: 'Custom schema location for kubeval'
150-
required: false
151-
152-
# Backup & Recovery
153-
enable-backup:
154-
description: 'Create backup before deployment'
155-
required: false
156-
default: 'false'
157-
158-
backup-storage:
159-
description: 'S3 bucket for storing backups'
71+
dry-run:
72+
description: 'Perform a dry run without making actual changes (default: false)'
16073
required: false
161-
162-
outputs:
163-
helm-release-name:
164-
description: 'Name of the deployed Helm release'
165-
166-
helm-release-revision:
167-
description: 'Revision number of the deployed Helm release'
168-
169-
kubernetes-resources:
170-
description: 'List of created/updated Kubernetes resources'
171-
172-
deployment-status:
173-
description: 'Status of the deployment (success/failure)'
174-
175-
runs:
176-
using: 'docker'
177-
image: 'Dockerfile'
74+
default: 'false'

0 commit comments

Comments
 (0)