-
Notifications
You must be signed in to change notification settings - Fork 10
/
Copy pathaction.yml
102 lines (86 loc) · 3.41 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
name: 'Run AWS ECS Fargate Task'
description: >-
Run an AWS ECS Fargate task and execute a custom commands. See the log output of the commands.
branding:
icon: 'activity'
color: 'white'
inputs:
task-definition:
description: >-
The name or the ARN of the task definition to use for the task.
required: true
subnet-ids:
description: >-
The list of subnet IDs for the task to use. If multiple they should be passed as multiline argument
with one subnet ID per line.
required: true
security-group-ids:
description: >-
List of security group IDs for the task. If multiple they should be passed as multiline argument
with one subnet ID per line.
required: true
assign-public-ip:
description: >-
Assign public a IP to the task.
Options: `['ENABLED', 'DISABLED']`
required: false
default: DISABLED
cluster:
description: >-
Which ECS cluster to start the task in.
required: false
override-container:
description: >-
Will use `containerOverrides` to run a custom command on the container. If provided, `override-container-command`
must also be set.
required: false
override-container-command:
description: >-
The command to run on the container if `override-container` is passed.
required: false
override-container-environment:
description: >-
Add or override existing environment variables if `override-container` is passed. Provide one per line in key=value format.
required: false
tail-logs:
description: >-
If set to true, will try to extract the logConfiguration for the first container in the task definition. If
`override-container` is passed, it will extract the logConfiguration from that container. Tailing logs is only
possible if the provided container uses the `awslogs` logDriver.
required: false
default: 'true'
task-wait-until-stopped:
description: >-
Whether to wait for the task to stop before finishing the action. If set to false, the action will finish
immediately after the task reaches the `RUNNING` state (fire and forget).
required: false
default: 'true'
task-start-max-wait-time:
description: >-
How long to wait for the task to start (i.e. reach the `RUNNING` state) in seconds. If the task does not start
within this time, the pipeline will fail.
required: false
default: 120
task-stop-max-wait-time:
description: >-
How long to wait for the task to stop (i.e. reach the `STOPPED` state) in seconds. The task will not be canceled
after this time, the pipeline will just be marked as failed.
required: false
default: 300
task-check-state-delay:
description: >-
How long to wait between each AWS API call to check the current state of the task in seconds. This is useful to
avoid running into AWS rate limits. **However**, setting this too high might cause the Action to miss the time-window
your task is in the "RUNNING" state (if you task is very short lived) and can cause the action to fail.
required: false
default: 6
outputs:
task-arn:
description: 'The full ARN for the task that was ran.'
task-id:
description: 'The ID for the task that was ran.'
log-output:
description: 'The log output of the task that was ran, if `tail-logs` and `task-wait-until-stopped` are set to true.'
runs:
using: 'node20'
main: 'dist/index.js'