forked from silinternational/ecs-deploy
-
Notifications
You must be signed in to change notification settings - Fork 0
/
action.yml
162 lines (162 loc) · 6.11 KB
/
action.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
name: 'ECS-Deploy'
description: 'Simple shell script for initiating blue-green deployments on Amazon EC2 Container Service (ECS)'
inputs:
aws_access_key_cmd:
description: '--aws-access-key'
required: true
aws_access_key:
description: 'AWS Access Key ID. May also be set as environment variable AWS_ACCESS_KEY_ID'
required: true
aws_secret_key_cmd:
description: '--aws-secret-key'
required: true
aws_secret_key:
description: 'AWS Secret Access Key. May also be set as environment variable AWS_SECRET_ACCESS_KEY'
required: true
service_name_cmd:
description: '--service-name'
service_name:
description: 'Name of service to deploy'
required: false
task_definition_cmd:
description: '--task-definition'
task_definition:
description: 'Name of task definition to deploy'
required: false
region_cmd:
description: '--region'
region:
description: 'AWS Region Name. May also be set as environment variable AWS_DEFAULT_REGION'
required: true
profile_cmd:
description: '--profile'
profile:
description: 'AWS Profile to use - If you set this aws-access-key, aws-secret-key and region are not needed'
required: true
cluster_cmd:
description: '--cluster'
cluster:
description: 'Name of ECS cluster'
required: true
image_cmd:
description: '--image'
image:
description: 'Name of Docker image to run, ex: repo/image:latest'
required: true
aws_assume_role_cmd:
description: '--aws-assume-role'
aws_assume_role:
description: 'ARN for AWS Role to assume for ecs-deploy operations.'
required: false
desired_count_cmd:
description: '--desired-count'
desired_count:
description: 'The number of instantiations of the task to place and keep running in your service.'
required: false
min_cmd:
description: '--min'
default: '--min'
min:
description: 'minumumHealthyPercent: The lower limit on the number of running tasks during a deployment.'
required: false
default: '100'
max_cmd:
description: '--max'
default: '--max'
max:
description: 'maximumPercent: The upper limit on the number of running tasks during a deployment.'
required: false
default: '200'
timeout_cmd:
description: '--timeout'
default: '--timeout'
timeout:
description: 'Script monitors ECS Service for new task definition to be running.'
required: false
default: '90'
tag_env_var_cmd:
description: '--tag-env-var'
tag_env_var:
description: 'Get image tag name from environment variable. If provided this will override value specified in image name argument.'
required: false
tag_only_cmd:
description: '--tag-only'
tag_only:
description: 'New tag to apply to all images defined in the task (multi-container task). If provided this will override value specified in image name argument.'
required: false
max_definitions_cmd:
description: '--max-definition'
max_definitions:
description: 'Number of Task Definition Revisions to persist before deregistering oldest revisions.'
required: false
enable_rollback_cmd:
description: '--enable-rollback'
enable_rollback:
description: 'Rollback task definition if new version is not running before TIMEOUT'
required: false
use_latest_task_def_cmd:
description: '--use-latest-task-def'
use_latest_task_def:
description: 'Will use the most recently created task definition as its base, rather than the last used.'
required: false
force_new_deployment_cmd:
description: '--force-new-deployment'
force_new_deployment:
description: 'Force a new deployment of the service.'
required: false
run_task_cmd:
description: '--run-task'
run_task:
description: 'Run created task now. If you set this, service-name are not needed.'
required: false
wait_for_success_cmd:
description: '--wait-for-success'
wait_for_success:
description: 'Wait for task execution to complete and to receive the exitCode 0.'
required: false
skip_deployments_check_cmd:
description: '--skip-deployments-check'
skip_deployments_check:
description: 'Skip deployments check for services that take too long to drain old tasks'
copy_task_definition_tags_cmd:
description: '--copy-task-definition-tags'
copy_task_definition_tags:
description: 'Copy the existing task definition tags to the new task definition revision'
required: false
verbose:
description: 'Verbose output'
required: false
outputs:
status:
description: 'status'
branding:
icon: 'codesandbox'
color: 'blue'
runs:
using: 'docker'
image: 'Dockerfile'
args: [
'${{ inputs.aws_access_key_cmd }}', '${{ inputs.aws_access_key }}',
'${{ inputs.aws_secret_key_cmd }}', '${{ inputs.aws_secret_key }}',
'${{ inputs.region_cmd }}', '${{ inputs.region }}',
'${{ inputs.service_name_cmd }}', '${{ inputs.service_name }}',
'${{ inputs.task_definition_cmd }}', '${{ inputs.task_definition }}',
'${{ inputs.enable_rollback_cmd }}', '${{ inputs.enable_rollback }}',
'${{ inputs.force_new_deployment_cmd }}', '${{ inputs.force_new_deployment }}',
'${{ inputs.cluster_cmd }}', '${{ inputs.cluster }}',
'${{ inputs.image_cmd }}', '${{ inputs.image }}',
'${{ inputs.aws_assume_role_cmd }}', '${{ inputs.aws_assume_role }}',
'${{ inputs.desired_count_cmd }}', '${{ inputs.desired_count }}',
'${{ inputs.min_cmd }}', '${{ inputs.min }}',
'${{ inputs.max_cmd }}', '${{ inputs.max }}',
'${{ inputs.profile_cmd }}', '${{ inputs.profile }}',
'${{ inputs.timeout_cmd }}', '${{ inputs.timeout }}',
'${{ inputs.tag_env_var_cmd }}', '${{ inputs.tag_env_var }}',
'${{ inputs.tag_only_cmd }}', '${{ inputs.tag_only }}',
'${{ inputs.use_latest_task_def_cmd }}', '${{ inputs.use_latest_task_def }}',
'${{ inputs.max_definitions_cmd }}', '${{ inputs.max_definitions }}',
'${{ inputs.run_task_cmd }}', '${{ inputs.run_task }}',
'${{ inputs.wait_for_success_cmd }}', '${{ inputs.wait_for_success }}',
'${{ inputs.copy_task_definition_tags_cmd }}', '${{ inputs.copy_task_definition_tags }}',
'${{ inputs.skip_deployments_check_cmd }}', '${{ inputs.skip_deployments_check }}'
]