-
Notifications
You must be signed in to change notification settings - Fork 3.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(ecs): Removing explicit mention of ECS DeploymentController for CircuitBreaker #16646
Conversation
Title does not follow the guidelines of Conventional Commits. Please adjust title before merge. |
924c117
to
ebfd5f2
Compare
AWS CodeBuild CI Report
Powered by github-codebuild-logs, available on the AWS Serverless Application Repository |
@madeline-k I'm waiting for this PR to be merged ... |
Closing this PR as a duplicate of #16919. @enomotodev, I will review that one and focus on getting it merged instead of this one. |
1 similar comment
Closing this PR as a duplicate of #16919. @enomotodev, I will review that one and focus on getting it merged instead of this one. |
ECS service update with circuitbreaker via CDK was not as expected for the customer. The field DeploymentController is set to ECS when it is passed as null during creation. Now when we try to update the DeploymentCircuitBreaker field on the resource the value of ECS for DeploymentController is passed explicity. So technically this does not change anything on the service side except explicitly passing the value. But this is causing a new resource to be created via CFN as the field is createOnly. This leads to a new deploymment in ECS which should not happen as nothing is changing. This can cause issues for the customer side if they dont have enough instances to support new update causing failures and eventually failed updates via CDK.
Looking at the CDK implementation it seems like whenever the customer is creating/updating a service with CircuitBreaker the DeploymentConfiguration is explicitly set to ECS. This should not be the case because CircuitBreaker is independent of the DeploymentController and the validation for not supporting CircuitBreaker for any other DeploymentController is done on the backend. So this kind of explicit passing on value is not required in CDK.