Skip to content

Commit c72a09b

Browse files
authored
feat(ecs): new L2 construct for ManagedInstances CapacityProvider (#35648)
### Issue # (if applicable) Closes #<issue number here>. ### Reason for this change <!--What is the bug or use case behind this change?--> ECS is launching new Capacity Provider called Managed Instances similar to currently available [AutoScalingGroup Capacity Provider](https://docs.aws.amazon.com/cdk/api/v2/docs/aws-cdk-lib.aws_ecs.AsgCapacityProvider.html) ### Description of changes <!-- What code changes did you make? Why do these changes address the issue? What alternatives did you consider and reject? What design decisions have you made? --> Created a new L2 construct for ManagedInstances Capacity Provider. AWS ECS Managed Instances is a new capability being launched, that allows customers to specify desired Amazon EC2 instance types for their serverless workloads. It enables them to run workloads that require specific compute capabilities, such as GPU, accelerated compute, CPU instruction sets, or large number of vCPUs, while retaining the serverless benefits of fully managed compute infrastructure and automatic security patching. AWS ECS Managed Instances leverages Amazon EC2 Managed Instances to deliver these compute capabilities, with seamless access to EC2 features like Reserved Instances (RIs) and On-Demand Capacity Reservations (ODCRs). Public API doc: [Documentation](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ManagedInstances.html) [AWS News Blog](https://aws.amazon.com/blogs/aws/announcing-amazon-ecs-managed-instances-for-containerized-applications/) [What’s New Post](https://aws.amazon.com/about-aws/whats-new/2025/09/amazon-ecs-managed-instances/) [Product Detail Page](https://aws.amazon.com/ecs/managed-instances/) [Pricing Page](https://aws.amazon.com/ecs/managed-instances/pricing/) [FAQs](https://aws.amazon.com/ecs/managed-instances/faqs/) ### Describe any new or updated permissions being added <!-- What new or updated IAM permissions are needed to support the changes being introduced? --> This feature introduced a new role called `infrastructureRole`. ### Description of how you validated changes <!-- Have you added any unit tests and/or integration tests? Did you test by hand? --> - Added an integration test - Added unit tests ### Checklist - [X] My code adheres to the [CONTRIBUTING GUIDE](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and [DESIGN GUIDELINES](https://github.com/aws/aws-cdk/blob/main/docs/DESIGN_GUIDELINES.md) ---- *By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license*
1 parent 812ee49 commit c72a09b

18 files changed

+4113
-12
lines changed

packages/@aws-cdk-testing/framework-integ/test/aws-ecs/test/integ.managedinstances-capacity-provider.js.snapshot/ManagedInstancesCapacityProvidersDefaultTestDeployAssert3628EE88.assets.json

Lines changed: 20 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/@aws-cdk-testing/framework-integ/test/aws-ecs/test/integ.managedinstances-capacity-provider.js.snapshot/ManagedInstancesCapacityProvidersDefaultTestDeployAssert3628EE88.template.json

Lines changed: 36 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/@aws-cdk-testing/framework-integ/test/aws-ecs/test/integ.managedinstances-capacity-provider.js.snapshot/cdk.out

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/@aws-cdk-testing/framework-integ/test/aws-ecs/test/integ.managedinstances-capacity-provider.js.snapshot/integ-managedinstances-capacity-provider.assets.json

Lines changed: 20 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)