aws / aws/aws-cdk

(aws-ecs-patterns): Configurable `stopTimeout` for Queue Processing Services

Open
#27,519 1 comment 3 reactions 0 assignees View on GitHub
@aws-cdk/aws-ecs-patterns effort/small feature-request p2
Dominant language
TypeScript
Stars
12.9k
Forks
4.6k
Avg merge
1d 19h
Merged PRs (30d)
71

Description

### Describe the feature

The constructs `QueueProcessingFargateServiceProps` and `QueueProcessingEc2ServiceProps` provide no way to configure the [stopTimeout](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#other_container_definition_params) parameter for the container definitions that these constructs create.

### Use Case

The `stopTimeout` parameters is particularly important for queue processing services to ensure that the process has time to drain its in-progress tasks before stopping.

### Proposed Solution

`QueueProcessingServiceBaseProps` includes parameters used by each of these constructs to create a `ContainerDefinition`, and it would be an obvious place to add a `stopTimeout` parameter, so that users may configure this value.

### Other Information

_No response_

### Acknowledgements

- [X] I may be able to implement this feature request
- [ ] This feature might incur a breaking change

### CDK version used

2.87.0

### Environment details (OS name and version, etc.)

macOS 14.0, Node v20.8.0, openjdk version "17.0.8.1" 2023-08-24

Contributor guide

Open the contributing guide

Research direction

Start by locating QueueProcessingServiceBaseProps and the QueueProcessingFargateServiceProps and QueueProcessingEc2ServiceProps constructs, then trace how they create ContainerDefinition instances. Confirm how a stopTimeout value should flow into both queue-processing services. Done means users can configure stopTimeout for the generated container definitions without changing existing behavior when it is omitted.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, typescript
Domain
cloud
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.