Repository navigation
fix(ecs): allow ephemeralStorageGiB for Windows Fargate platform version 1.0.0 - #37589
Conversation
…form version 1.0.0
…m version support
✅ Updated pull request passes all PRLinter validations. Dismissing previous PRLinter review.
|
Added an integ snapshot test to provide coverage for this behavior (as best as possible) and to guard against regressions.
It does not attempt to run a Windows task or validate container startup/image pull on Fargate: Start a Windows Image takes many time and could might result in a flakiness/latency to CI. Hence, I uses |
kumvprat
left a comment
There was a problem hiding this comment.
Thanks for this fix
I left three small, non-blocking suggestions inline (error-message clarity for the tokenized-OS edge case, a note on the public-getter API surface, and a positive template assertion in the unit test).
|
Automated review A maintainer will still review this — treat the notes below as a starting point. This PR fixes over-restrictive client-side validation in 🔴 0 blocking · 🟡 0 recommended · ⚪ 0 optional Generated automatically. React 👍 or 👎 to tell us whether this review helped, so we can improve these reviews. |
kumvprat
left a comment
There was a problem hiding this comment.
LGTM!! Thanks for the effort on this PR
|
Thank you for contributing! Your pull request will be updated from main and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork). |
Merge Queue Status
This pull request spent 5 minutes in the queue, including 4 minutes 47 seconds running CI. Required conditions to merge
|
|
Thank you for contributing! Your pull request will be updated from main and then merged automatically (do not update manually, and be sure to allow changes to be pushed to your fork). |
|
Comments on closed issues and PRs are hard for our team to see. |
Issue # (if applicable)
Closes #37510.
Reason for this change
FargateServicecurrently throwsEphemeralStorageGibFeatureRequireswhenephemeralStorageGiBis set and the Fargate platform version is < 1.4.0.This validation is correct for Linux tasks, but incorrect for Windows tasks: according to the ECS documentation, Windows Fargate supports task ephemeral storage starting with platform version 1.0.0.
Description of changes
TaskDefinition.runtimePlatformsoFargateServicecan determine the task operating system family.FargateServicevalidation to only require platform version >= 1.4.0 forephemeralStorageGiBon non-Windows (Linux) tasks.ephemeralStorageGiBdocumentation to reflect the different minimum platform versions for Linux vs. Windows tasks.ephemeralStorageGiBon a Windows Fargate task definition with platform version 1.0.0 does not fail during synth.Alternatives considered:
runtimePlatformalready models the required information).Describe any new or updated permissions being added
None.
Description of how you validated changes
packages/aws-cdk-lib/aws-ecs/test/fargate/fargate-service.test.tsthat synthesizes a Windows Fargate service usingplatformVersion: VERSION1_0andephemeralStorageGiB.Checklist
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache-2.0 license