From 72731c24352368d71bcf06879a9b2a3f6940b0cb Mon Sep 17 00:00:00 2001 From: Abdul Kader Maliyakkal Date: Sun, 7 Mar 2021 11:22:21 -0800 Subject: [PATCH] Set deploymentController to ECS deployment type if circuitBreaker is defined --- packages/@aws-cdk/aws-ecs-patterns/README.md | 3 --- .../@aws-cdk/aws-ecs-patterns/test/ec2/test.l3s.ts | 12 ++++++------ .../test/ec2/test.queue-processing-ecs-service.ts | 5 +---- .../fargate/test.load-balanced-fargate-service.ts | 12 ++++++------ .../fargate/test.queue-processing-fargate-service.ts | 5 +---- packages/@aws-cdk/aws-ecs/lib/base/base-service.ts | 6 ++++-- .../aws-ecs/test/fargate/fargate-service.test.ts | 7 +++++-- 7 files changed, 23 insertions(+), 27 deletions(-) diff --git a/packages/@aws-cdk/aws-ecs-patterns/README.md b/packages/@aws-cdk/aws-ecs-patterns/README.md index c7a152b7b1535..2293c129ee245 100644 --- a/packages/@aws-cdk/aws-ecs-patterns/README.md +++ b/packages/@aws-cdk/aws-ecs-patterns/README.md @@ -410,9 +410,6 @@ const service = new ApplicationLoadBalancedFargateService(stack, 'Service', { taskImageOptions: { image: ecs.ContainerImage.fromRegistry("amazon/amazon-ecs-sample"), }, - deploymentController: { - type: ecs.DeploymentControllerType.ECS, - }, circuitBreaker: { rollback: true }, }); ``` diff --git a/packages/@aws-cdk/aws-ecs-patterns/test/ec2/test.l3s.ts b/packages/@aws-cdk/aws-ecs-patterns/test/ec2/test.l3s.ts index 5b6e03a78c70b..d41a7684fd677 100644 --- a/packages/@aws-cdk/aws-ecs-patterns/test/ec2/test.l3s.ts +++ b/packages/@aws-cdk/aws-ecs-patterns/test/ec2/test.l3s.ts @@ -1112,9 +1112,6 @@ export = { taskImageOptions: { image: ecs.ContainerImage.fromRegistry('amazon/amazon-ecs-sample'), }, - deploymentController: { - type: ecs.DeploymentControllerType.ECS, - }, circuitBreaker: { rollback: true }, }); @@ -1126,6 +1123,9 @@ export = { Rollback: true, }, }, + DeploymentController: { + Type: 'ECS', + }, })); test.done(); @@ -1145,9 +1145,6 @@ export = { taskImageOptions: { image: ecs.ContainerImage.fromRegistry('amazon/amazon-ecs-sample'), }, - deploymentController: { - type: ecs.DeploymentControllerType.ECS, - }, circuitBreaker: { rollback: true }, }); @@ -1159,6 +1156,9 @@ export = { Rollback: true, }, }, + DeploymentController: { + Type: 'ECS', + }, })); test.done(); diff --git a/packages/@aws-cdk/aws-ecs-patterns/test/ec2/test.queue-processing-ecs-service.ts b/packages/@aws-cdk/aws-ecs-patterns/test/ec2/test.queue-processing-ecs-service.ts index 8eaa0fd929030..77d822d443048 100644 --- a/packages/@aws-cdk/aws-ecs-patterns/test/ec2/test.queue-processing-ecs-service.ts +++ b/packages/@aws-cdk/aws-ecs-patterns/test/ec2/test.queue-processing-ecs-service.ts @@ -209,9 +209,6 @@ export = { maxHealthyPercent: 150, serviceName: 'ecs-test-service', family: 'ecs-task-family', - deploymentController: { - type: ecs.DeploymentControllerType.CODE_DEPLOY, - }, circuitBreaker: { rollback: true }, }); @@ -229,7 +226,7 @@ export = { LaunchType: 'EC2', ServiceName: 'ecs-test-service', DeploymentController: { - Type: 'CODE_DEPLOY', + Type: 'ECS', }, })); diff --git a/packages/@aws-cdk/aws-ecs-patterns/test/fargate/test.load-balanced-fargate-service.ts b/packages/@aws-cdk/aws-ecs-patterns/test/fargate/test.load-balanced-fargate-service.ts index 0c25cd479925f..3a17962c8b230 100644 --- a/packages/@aws-cdk/aws-ecs-patterns/test/fargate/test.load-balanced-fargate-service.ts +++ b/packages/@aws-cdk/aws-ecs-patterns/test/fargate/test.load-balanced-fargate-service.ts @@ -436,9 +436,6 @@ export = { taskImageOptions: { image: ecs.ContainerImage.fromRegistry('/aws/aws-example-app'), }, - deploymentController: { - type: ecs.DeploymentControllerType.ECS, - }, circuitBreaker: { rollback: true }, }); // THEN @@ -449,6 +446,9 @@ export = { Rollback: true, }, }, + DeploymentController: { + Type: 'ECS', + }, })); test.done(); }, @@ -462,9 +462,6 @@ export = { taskImageOptions: { image: ecs.ContainerImage.fromRegistry('/aws/aws-example-app'), }, - deploymentController: { - type: ecs.DeploymentControllerType.ECS, - }, circuitBreaker: { rollback: true }, }); // THEN @@ -475,6 +472,9 @@ export = { Rollback: true, }, }, + DeploymentController: { + Type: 'ECS', + }, })); test.done(); }, diff --git a/packages/@aws-cdk/aws-ecs-patterns/test/fargate/test.queue-processing-fargate-service.ts b/packages/@aws-cdk/aws-ecs-patterns/test/fargate/test.queue-processing-fargate-service.ts index bfd4a36654deb..5207f92629c10 100644 --- a/packages/@aws-cdk/aws-ecs-patterns/test/fargate/test.queue-processing-fargate-service.ts +++ b/packages/@aws-cdk/aws-ecs-patterns/test/fargate/test.queue-processing-fargate-service.ts @@ -344,9 +344,6 @@ export = { serviceName: 'fargate-test-service', family: 'fargate-task-family', platformVersion: ecs.FargatePlatformVersion.VERSION1_4, - deploymentController: { - type: ecs.DeploymentControllerType.CODE_DEPLOY, - }, circuitBreaker: { rollback: true }, }); @@ -365,7 +362,7 @@ export = { ServiceName: 'fargate-test-service', PlatformVersion: ecs.FargatePlatformVersion.VERSION1_4, DeploymentController: { - Type: 'CODE_DEPLOY', + Type: 'ECS', }, })); diff --git a/packages/@aws-cdk/aws-ecs/lib/base/base-service.ts b/packages/@aws-cdk/aws-ecs/lib/base/base-service.ts index 3ff3f20fd8acd..306b2bced3477 100644 --- a/packages/@aws-cdk/aws-ecs/lib/base/base-service.ts +++ b/packages/@aws-cdk/aws-ecs/lib/base/base-service.ts @@ -387,7 +387,9 @@ export abstract class BaseService extends Resource }, propagateTags: props.propagateTags === PropagatedTagSource.NONE ? undefined : props.propagateTags, enableEcsManagedTags: props.enableECSManagedTags ?? false, - deploymentController: props.deploymentController, + deploymentController: props.circuitBreaker ? { + type: DeploymentControllerType.ECS, + } : props.deploymentController, launchType: launchType, capacityProviderStrategy: props.capacityProviderStrategies, healthCheckGracePeriodSeconds: this.evaluateHealthGracePeriod(props.healthCheckGracePeriod), @@ -984,4 +986,4 @@ function determineContainerNameAndPort(options: DetermineContainerNameAndPortOpt } return {}; -} \ No newline at end of file +} diff --git a/packages/@aws-cdk/aws-ecs/test/fargate/fargate-service.test.ts b/packages/@aws-cdk/aws-ecs/test/fargate/fargate-service.test.ts index 5531b53413f46..cbd43a8d44f67 100644 --- a/packages/@aws-cdk/aws-ecs/test/fargate/fargate-service.test.ts +++ b/packages/@aws-cdk/aws-ecs/test/fargate/fargate-service.test.ts @@ -389,7 +389,7 @@ nodeunitShim({ maxHealthyPercent: 150, minHealthyPercent: 55, deploymentController: { - type: ecs.DeploymentControllerType.CODE_DEPLOY, + type: ecs.DeploymentControllerType.ECS, }, circuitBreaker: { rollback: true }, securityGroup: new ec2.SecurityGroup(stack, 'SecurityGroup1', { @@ -421,7 +421,7 @@ nodeunitShim({ }, }, DeploymentController: { - Type: ecs.DeploymentControllerType.CODE_DEPLOY, + Type: ecs.DeploymentControllerType.ECS, }, DesiredCount: 2, HealthCheckGracePeriodSeconds: 60, @@ -2073,6 +2073,9 @@ nodeunitShim({ Rollback: true, }, }, + DeploymentController: { + Type: ecs.DeploymentControllerType.ECS, + }, })); test.done();