You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+35-18Lines changed: 35 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,12 +20,6 @@ Registers an Amazon ECS task definition and deploys it to an ECS service.
20
20
21
21
## Usage
22
22
23
-
The action supports the following inputs:
24
-
25
-
*`task-definition` (required) - The path to the ECS task definition file (JSON format) to register.
26
-
*`max-retries` (optional) - The maximum number of retry attempts for AWS API calls. The action uses exponential backoff with jitter for retries. Defaults to 3.
27
-
*`service` (optional) - The name of the ECS service to update with the new task definition. If empty, the action will not attempt to update a service.
@@ -234,7 +228,7 @@ Running a service requires the following minimum set of permissions:
234
228
]
235
229
}
236
230
```
237
-
231
+
238
232
Running a one-off/stand-alone task requires the following minimum set of permissions:
239
233
```json
240
234
{
@@ -348,7 +342,7 @@ In the following example, the service would not be updated until the ad-hoc task
348
342
wait-for-task-stopped: true
349
343
```
350
344
351
-
Overrides and VPC networking options are available as well. See [action.yml](action.yml) for more details. The `FARGATE`
345
+
Overrides and VPC networking options are available as well. See [action.yml](action.yml) for more details. The `FARGATE`
352
346
launch type requires `awsvpc` network mode in your task definition and you must specify a network configuration.
353
347
354
348
### Tags
@@ -375,21 +369,44 @@ To tag your tasks:
375
369
376
370
## Preserving Empty Values with keep-null-value-keys
377
371
378
-
By default, this action removes empty string, array, and object values from the ECS task definition before registering it. If you want to preserve empty values for specific keys, use the `keep-null-value-keys` input. This is a comma-separated list of key names. When specified, any empty value for those keys will be kept in the registered task definition.
372
+
By default, this action removes empty string, array, and object values from the ECS task definition before registering it. This behavior aligns with ECS defaults but can be problematic when you explicitly want to override a non-null default value with an empty or null value.
373
+
374
+
To preserve empty values for specific keys, use the keep-null-value-keys input. This is a comma-separated list of key names. When specified, empty values for those keys will be retained in the registered task definition.
375
+
376
+
This is particularly useful in cases where ECS or a previous task definition applies a default value and you want to explicitly unset it.
To automatically retry a failed task definition deployment, use the max-retries input. This controls how many times the action will attempt to register and deploy the task definition before failing.
This is useful for cases where a default value is non-null and you want to override the value and set it to null.
409
+
Retries apply to transient failures during task definition registration or service update, such as eventual consistency issues or temporary AWS API errors.
0 commit comments