aws-ecs-patterns (`QueueProcessingFargateService`): Expose `linuxParameters` property within `QueueProcessingFargateServiceProps`
- Dominant language
- TypeScript
- Stars
- 12.9k
- Forks
- 4.6k
- Avg merge
- 1d 19h
- Merged PRs (30d)
- 74
Description
### Describe the feature
Expose the [`linuxParameters`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ecs.LinuxParameters.html) property within [`QueueProcessingFargateServiceProps`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ecs_patterns.QueueProcessingFargateServiceProps.html) for use with the [`QueueProcessingFargateService`](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ecs_patterns.QueueProcessingFargateService.html).
### Use Case
In order to enable [ECS Exec with `initProcessEnabled`](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-exec.html#ecs-exec-task-definition) the `linuxParameters` property needs to be exposed in `QueueProcessingFargateServiceProps`.
The default value for `initProcessEnabled` is `false` and it is not possible to set it to `true` with the `QueueProcessingFargateService`.
### Proposed Solution
The property will need to be consumed within the [constructor of `QueueProcessingFargateService` when adding the container.](https://github.com/aws/aws-cdk/blob/main/packages/@aws-cdk/aws-ecs-patterns/lib/fargate/queue-processing-fargate-service.ts#L81-L88)
See:
* [TaskDefinition.addContainer(id, props)](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ecs.TaskDefinition.html#addwbrcontainerid-props)
* [ContainerDefinitionOptions.linuxParameters](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ecs.ContainerDefinitionOptions.html#linuxparameters)
### 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.28.1
### Environment details (OS name and version, etc.)
Fargate 1.4 w/ Linux x86_64
Contributor guide
Research direction
Start in packages/@aws-cdk/aws-ecs-patterns/lib/fargate/queue-processing-fargate-service.ts at the QueueProcessingFargateService constructor and review how the container is added. Expose linuxParameters on QueueProcessingFargateServiceProps and pass it through to TaskDefinition.addContainer; done means the property can enable initProcessEnabled for the service.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, typescript
- Domain
- cloud, infrastructure
- Issue type
- Feature
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 48/100