Skip to content
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

r/aws_ecs_service: fix load_balancer & service_registries to update without destroy & recreate #23786

Merged
merged 5 commits into from
Mar 23, 2022

Conversation

kevinkupski
Copy link
Contributor

@kevinkupski kevinkupski commented Mar 21, 2022

Community Note

  • Please vote on this pull request by adding a 👍 reaction to the original pull request comment to help the community and maintainers prioritize this request
  • Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for pull request followers and do not help prioritize the request

Relates to #23596
Relates to #23581

Relates to #23600

The above mentioned PR seems to not eliminate the recreation of the ECS service when updating the load_balancer and service_registries. It looks like there were some left over ForceNews.

Also, there is a cast error when using the load_balancer field which can lead to a panic.

Unfortunately it seems like the AWS ECS API has a bug in the UpdateService call since we cannot update with a classic load balancer. That's also the reason why the last test fails. Any idea how to proceed here?

Output from acceptance testing:

$ make testacc TESTS=TestAccECSService PKG=ecs
TF_ACC=1 go test ./internal/service/ecs/... -v -count 1 -parallel 20 -run='TestAccECSService'  -timeout 180m
=== RUN   TestAccECSServiceDataSource_basic
=== PAUSE TestAccECSServiceDataSource_basic
=== RUN   TestAccECSService_basic
=== PAUSE TestAccECSService_basic
=== RUN   TestAccECSService_basicImport
=== PAUSE TestAccECSService_basicImport
=== RUN   TestAccECSService_disappears
=== PAUSE TestAccECSService_disappears
=== RUN   TestAccECSService_PlacementStrategy_unnormalized
=== PAUSE TestAccECSService_PlacementStrategy_unnormalized
=== RUN   TestAccECSService_CapacityProviderStrategy_basic
=== PAUSE TestAccECSService_CapacityProviderStrategy_basic
=== RUN   TestAccECSService_CapacityProviderStrategy_forceNewDeployment
=== PAUSE TestAccECSService_CapacityProviderStrategy_forceNewDeployment
=== RUN   TestAccECSService_CapacityProviderStrategy_update
=== PAUSE TestAccECSService_CapacityProviderStrategy_update
=== RUN   TestAccECSService_CapacityProviderStrategy_multiple
=== PAUSE TestAccECSService_CapacityProviderStrategy_multiple
=== RUN   TestAccECSService_familyAndRevision
=== PAUSE TestAccECSService_familyAndRevision
=== RUN   TestAccECSService_renamedCluster
=== PAUSE TestAccECSService_renamedCluster
=== RUN   TestAccECSService_healthCheckGracePeriodSeconds
=== PAUSE TestAccECSService_healthCheckGracePeriodSeconds
=== RUN   TestAccECSService_iamRole
=== PAUSE TestAccECSService_iamRole
=== RUN   TestAccECSService_DeploymentControllerType_codeDeploy
=== PAUSE TestAccECSService_DeploymentControllerType_codeDeploy
=== RUN   TestAccECSService_DeploymentControllerType_codeDeployUpdateDesiredCountAndHealthCheckGracePeriod
=== PAUSE TestAccECSService_DeploymentControllerType_codeDeployUpdateDesiredCountAndHealthCheckGracePeriod
=== RUN   TestAccECSService_DeploymentControllerType_external
=== PAUSE TestAccECSService_DeploymentControllerType_external
=== RUN   TestAccECSService_DeploymentValues_basic
=== PAUSE TestAccECSService_DeploymentValues_basic
=== RUN   TestAccECSService_DeploymentValues_minZeroMaxOneHundred
=== PAUSE TestAccECSService_DeploymentValues_minZeroMaxOneHundred
=== RUN   TestAccECSService_deploymentCircuitBreaker
=== PAUSE TestAccECSService_deploymentCircuitBreaker
=== RUN   TestAccECSService_loadBalancerChanges
=== PAUSE TestAccECSService_loadBalancerChanges
=== RUN   TestAccECSService_clusterName
=== PAUSE TestAccECSService_clusterName
=== RUN   TestAccECSService_alb
=== PAUSE TestAccECSService_alb
=== RUN   TestAccECSService_multipleTargetGroups
=== PAUSE TestAccECSService_multipleTargetGroups
=== RUN   TestAccECSService_forceNewDeployment
=== PAUSE TestAccECSService_forceNewDeployment
=== RUN   TestAccECSService_PlacementStrategy_basic
=== PAUSE TestAccECSService_PlacementStrategy_basic
=== RUN   TestAccECSService_PlacementStrategy_missing
=== PAUSE TestAccECSService_PlacementStrategy_missing
=== RUN   TestAccECSService_PlacementConstraints_basic
=== PAUSE TestAccECSService_PlacementConstraints_basic
=== RUN   TestAccECSService_PlacementConstraints_emptyExpression
=== PAUSE TestAccECSService_PlacementConstraints_emptyExpression
=== RUN   TestAccECSService_LaunchTypeFargate_basic
=== PAUSE TestAccECSService_LaunchTypeFargate_basic
=== RUN   TestAccECSService_LaunchTypeFargate_platformVersion
=== PAUSE TestAccECSService_LaunchTypeFargate_platformVersion
=== RUN   TestAccECSService_LaunchTypeFargate_waitForSteadyState
=== PAUSE TestAccECSService_LaunchTypeFargate_waitForSteadyState
=== RUN   TestAccECSService_LaunchTypeFargate_updateWaitForSteadyState
=== PAUSE TestAccECSService_LaunchTypeFargate_updateWaitForSteadyState
=== RUN   TestAccECSService_LaunchTypeEC2_network
=== PAUSE TestAccECSService_LaunchTypeEC2_network
=== RUN   TestAccECSService_DaemonSchedulingStrategy_basic
=== PAUSE TestAccECSService_DaemonSchedulingStrategy_basic
=== RUN   TestAccECSService_DaemonSchedulingStrategy_setDeploymentMinimum
=== PAUSE TestAccECSService_DaemonSchedulingStrategy_setDeploymentMinimum
=== RUN   TestAccECSService_replicaSchedulingStrategy
=== PAUSE TestAccECSService_replicaSchedulingStrategy
=== RUN   TestAccECSService_ServiceRegistries_basic
=== PAUSE TestAccECSService_ServiceRegistries_basic
=== RUN   TestAccECSService_ServiceRegistries_container
=== PAUSE TestAccECSService_ServiceRegistries_container
=== RUN   TestAccECSService_ServiceRegistries_changes
=== PAUSE TestAccECSService_ServiceRegistries_changes
=== RUN   TestAccECSService_Tags_basic
=== PAUSE TestAccECSService_Tags_basic
=== RUN   TestAccECSService_Tags_managed
=== PAUSE TestAccECSService_Tags_managed
=== RUN   TestAccECSService_Tags_propagate
=== PAUSE TestAccECSService_Tags_propagate
=== RUN   TestAccECSService_executeCommand
=== PAUSE TestAccECSService_executeCommand
=== CONT  TestAccECSServiceDataSource_basic
=== CONT  TestAccECSService_multipleTargetGroups
=== CONT  TestAccECSService_ServiceRegistries_changes
=== CONT  TestAccECSService_executeCommand
=== CONT  TestAccECSService_Tags_propagate
=== CONT  TestAccECSService_Tags_managed
=== CONT  TestAccECSService_Tags_basic
=== CONT  TestAccECSService_LaunchTypeFargate_basic
=== CONT  TestAccECSService_LaunchTypeEC2_network
=== CONT  TestAccECSService_LaunchTypeFargate_updateWaitForSteadyState
=== CONT  TestAccECSService_LaunchTypeFargate_waitForSteadyState
=== CONT  TestAccECSService_LaunchTypeFargate_platformVersion
=== CONT  TestAccECSService_PlacementConstraints_emptyExpression
=== CONT  TestAccECSService_PlacementStrategy_missing
=== CONT  TestAccECSService_PlacementConstraints_basic
=== CONT  TestAccECSService_PlacementStrategy_basic
=== CONT  TestAccECSService_forceNewDeployment
=== CONT  TestAccECSService_ServiceRegistries_basic
=== CONT  TestAccECSService_ServiceRegistries_container
=== CONT  TestAccECSService_replicaSchedulingStrategy
--- PASS: TestAccECSService_PlacementStrategy_missing (17.34s)
=== CONT  TestAccECSService_DaemonSchedulingStrategy_setDeploymentMinimum
--- PASS: TestAccECSService_DaemonSchedulingStrategy_setDeploymentMinimum (110.80s)
=== CONT  TestAccECSService_healthCheckGracePeriodSeconds
--- PASS: TestAccECSService_replicaSchedulingStrategy (156.62s)
=== CONT  TestAccECSService_alb
--- PASS: TestAccECSService_PlacementConstraints_emptyExpression (157.41s)
=== CONT  TestAccECSService_clusterName
--- PASS: TestAccECSServiceDataSource_basic (157.97s)
=== CONT  TestAccECSService_loadBalancerChanges
--- PASS: TestAccECSService_Tags_managed (161.92s)
=== CONT  TestAccECSService_deploymentCircuitBreaker
--- PASS: TestAccECSService_LaunchTypeFargate_waitForSteadyState (190.32s)
=== CONT  TestAccECSService_DeploymentValues_minZeroMaxOneHundred
--- PASS: TestAccECSService_forceNewDeployment (203.07s)
=== CONT  TestAccECSService_DeploymentValues_basic
--- PASS: TestAccECSService_PlacementConstraints_basic (204.13s)
=== CONT  TestAccECSService_DeploymentControllerType_external
--- PASS: TestAccECSService_executeCommand (224.70s)
=== CONT  TestAccECSService_DeploymentControllerType_codeDeployUpdateDesiredCountAndHealthCheckGracePeriod
--- PASS: TestAccECSService_LaunchTypeEC2_network (226.00s)
=== CONT  TestAccECSService_DeploymentControllerType_codeDeploy
--- PASS: TestAccECSService_ServiceRegistries_container (239.25s)
=== CONT  TestAccECSService_iamRole
--- PASS: TestAccECSService_ServiceRegistries_basic (241.41s)
=== CONT  TestAccECSService_CapacityProviderStrategy_forceNewDeployment
=== CONT  TestAccECSService_loadBalancerChanges
    service_test.go:564: Step 2/2 error: Error running apply: exit status 1
        
        Error: error updating ECS Service (arn:aws:ecs:eu-central-1:671112438854:service/tf-acc-test-699177274688101980/tf-acc-test-699177274688101980): InvalidParameterException: Target Group Arn can not be blank.
        
          with aws_ecs_service.test,
          on terraform_plugin_test.tf line 111, in resource "aws_ecs_service" "test":
         111: resource "aws_ecs_service" "test" {
        
--- PASS: TestAccECSService_Tags_propagate (258.67s)
=== CONT  TestAccECSService_renamedCluster
--- PASS: TestAccECSService_clusterName (102.54s)
=== CONT  TestAccECSService_familyAndRevision
--- PASS: TestAccECSService_Tags_basic (267.45s)
=== CONT  TestAccECSService_CapacityProviderStrategy_multiple
--- PASS: TestAccECSService_deploymentCircuitBreaker (111.37s)
=== CONT  TestAccECSService_CapacityProviderStrategy_update
--- FAIL: TestAccECSService_loadBalancerChanges (117.86s)
=== CONT  TestAccECSService_disappears
--- PASS: TestAccECSService_DeploymentControllerType_external (74.22s)
=== CONT  TestAccECSService_CapacityProviderStrategy_basic
--- PASS: TestAccECSService_PlacementStrategy_basic (300.80s)
=== CONT  TestAccECSService_PlacementStrategy_unnormalized
--- PASS: TestAccECSService_DeploymentValues_minZeroMaxOneHundred (110.52s)
=== CONT  TestAccECSService_basicImport
--- PASS: TestAccECSService_LaunchTypeFargate_platformVersion (301.24s)
=== CONT  TestAccECSService_basic
--- PASS: TestAccECSService_LaunchTypeFargate_basic (301.32s)
=== CONT  TestAccECSService_DaemonSchedulingStrategy_basic
--- PASS: TestAccECSService_DeploymentValues_basic (101.32s)
--- PASS: TestAccECSService_LaunchTypeFargate_updateWaitForSteadyState (311.68s)
--- PASS: TestAccECSService_iamRole (89.64s)
--- PASS: TestAccECSService_multipleTargetGroups (331.09s)
--- PASS: TestAccECSService_disappears (80.10s)
--- PASS: TestAccECSService_DaemonSchedulingStrategy_basic (57.47s)
--- PASS: TestAccECSService_ServiceRegistries_changes (359.84s)
--- PASS: TestAccECSService_familyAndRevision (112.50s)
--- PASS: TestAccECSService_renamedCluster (123.91s)
--- PASS: TestAccECSService_CapacityProviderStrategy_multiple (115.91s)
--- PASS: TestAccECSService_basicImport (92.96s)
--- PASS: TestAccECSService_basic (98.87s)
--- PASS: TestAccECSService_PlacementStrategy_unnormalized (103.66s)
--- PASS: TestAccECSService_CapacityProviderStrategy_forceNewDeployment (170.26s)
--- PASS: TestAccECSService_alb (301.24s)
--- PASS: TestAccECSService_CapacityProviderStrategy_basic (187.97s)
--- PASS: TestAccECSService_healthCheckGracePeriodSeconds (343.75s)
--- PASS: TestAccECSService_DeploymentControllerType_codeDeploy (307.74s)
--- PASS: TestAccECSService_CapacityProviderStrategy_update (287.71s)
--- PASS: TestAccECSService_DeploymentControllerType_codeDeployUpdateDesiredCountAndHealthCheckGracePeriod (415.54s)
FAIL
FAIL    github.com/hashicorp/terraform-provider-aws/internal/service/ecs        640.391s
FAIL
make: *** [GNUmakefile:36: testacc] Error 1
...

@github-actions github-actions bot added service/ecs Issues and PRs that pertain to the ecs service. size/XS Managed by automation to categorize the size of a PR. needs-triage Waiting for first response or review from a maintainer. labels Mar 21, 2022
@justinretzolk justinretzolk added enhancement Requests to existing resources that expand the functionality or scope. and removed needs-triage Waiting for first response or review from a maintainer. labels Mar 21, 2022
@kevinkupski
Copy link
Contributor Author

@justinretzolk thank you for having a look at this PR. You labeled it as enhancement but it also fixes a possible panic, so this is mainly a bugfix for #23600. Should this be labeled as a bugfix then?

@github-actions github-actions bot added size/S Managed by automation to categorize the size of a PR. and removed size/XS Managed by automation to categorize the size of a PR. labels Mar 23, 2022
@github-actions github-actions bot added tests PRs: expanded test coverage. Issues: expanded coverage, enhancements to test infrastructure. size/M Managed by automation to categorize the size of a PR. and removed size/S Managed by automation to categorize the size of a PR. labels Mar 23, 2022
Copy link
Contributor

@ewbankkit ewbankkit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🚀.

% make testacc TESTS=TestAccECSService_ PKG=ecs ACCTEST_PARALLELISM=2
==> Checking that code complies with gofmt requirements...
TF_ACC=1 go test ./internal/service/ecs/... -v -count 1 -parallel 2 -run='TestAccECSService_'  -timeout 180m
=== RUN   TestAccECSService_basic
=== PAUSE TestAccECSService_basic
=== RUN   TestAccECSService_basicImport
=== PAUSE TestAccECSService_basicImport
=== RUN   TestAccECSService_disappears
=== PAUSE TestAccECSService_disappears
=== RUN   TestAccECSService_PlacementStrategy_unnormalized
=== PAUSE TestAccECSService_PlacementStrategy_unnormalized
=== RUN   TestAccECSService_CapacityProviderStrategy_basic
=== PAUSE TestAccECSService_CapacityProviderStrategy_basic
=== RUN   TestAccECSService_CapacityProviderStrategy_forceNewDeployment
=== PAUSE TestAccECSService_CapacityProviderStrategy_forceNewDeployment
=== RUN   TestAccECSService_CapacityProviderStrategy_update
=== PAUSE TestAccECSService_CapacityProviderStrategy_update
=== RUN   TestAccECSService_CapacityProviderStrategy_multiple
=== PAUSE TestAccECSService_CapacityProviderStrategy_multiple
=== RUN   TestAccECSService_familyAndRevision
=== PAUSE TestAccECSService_familyAndRevision
=== RUN   TestAccECSService_renamedCluster
=== PAUSE TestAccECSService_renamedCluster
=== RUN   TestAccECSService_healthCheckGracePeriodSeconds
=== PAUSE TestAccECSService_healthCheckGracePeriodSeconds
=== RUN   TestAccECSService_iamRole
=== PAUSE TestAccECSService_iamRole
=== RUN   TestAccECSService_DeploymentControllerType_codeDeploy
=== PAUSE TestAccECSService_DeploymentControllerType_codeDeploy
=== RUN   TestAccECSService_DeploymentControllerType_codeDeployUpdateDesiredCountAndHealthCheckGracePeriod
=== PAUSE TestAccECSService_DeploymentControllerType_codeDeployUpdateDesiredCountAndHealthCheckGracePeriod
=== RUN   TestAccECSService_DeploymentControllerType_external
=== PAUSE TestAccECSService_DeploymentControllerType_external
=== RUN   TestAccECSService_DeploymentValues_basic
=== PAUSE TestAccECSService_DeploymentValues_basic
=== RUN   TestAccECSService_DeploymentValues_minZeroMaxOneHundred
=== PAUSE TestAccECSService_DeploymentValues_minZeroMaxOneHundred
=== RUN   TestAccECSService_deploymentCircuitBreaker
=== PAUSE TestAccECSService_deploymentCircuitBreaker
=== RUN   TestAccECSService_loadBalancerChanges
=== PAUSE TestAccECSService_loadBalancerChanges
=== RUN   TestAccECSService_clusterName
=== PAUSE TestAccECSService_clusterName
=== RUN   TestAccECSService_alb
=== PAUSE TestAccECSService_alb
=== RUN   TestAccECSService_multipleTargetGroups
=== PAUSE TestAccECSService_multipleTargetGroups
=== RUN   TestAccECSService_forceNewDeployment
=== PAUSE TestAccECSService_forceNewDeployment
=== RUN   TestAccECSService_PlacementStrategy_basic
=== PAUSE TestAccECSService_PlacementStrategy_basic
=== RUN   TestAccECSService_PlacementStrategy_missing
=== PAUSE TestAccECSService_PlacementStrategy_missing
=== RUN   TestAccECSService_PlacementConstraints_basic
=== PAUSE TestAccECSService_PlacementConstraints_basic
=== RUN   TestAccECSService_PlacementConstraints_emptyExpression
=== PAUSE TestAccECSService_PlacementConstraints_emptyExpression
=== RUN   TestAccECSService_LaunchTypeFargate_basic
=== PAUSE TestAccECSService_LaunchTypeFargate_basic
=== RUN   TestAccECSService_LaunchTypeFargate_platformVersion
=== PAUSE TestAccECSService_LaunchTypeFargate_platformVersion
=== RUN   TestAccECSService_LaunchTypeFargate_waitForSteadyState
=== PAUSE TestAccECSService_LaunchTypeFargate_waitForSteadyState
=== RUN   TestAccECSService_LaunchTypeFargate_updateWaitForSteadyState
=== PAUSE TestAccECSService_LaunchTypeFargate_updateWaitForSteadyState
=== RUN   TestAccECSService_LaunchTypeEC2_network
=== PAUSE TestAccECSService_LaunchTypeEC2_network
=== RUN   TestAccECSService_DaemonSchedulingStrategy_basic
=== PAUSE TestAccECSService_DaemonSchedulingStrategy_basic
=== RUN   TestAccECSService_DaemonSchedulingStrategy_setDeploymentMinimum
=== PAUSE TestAccECSService_DaemonSchedulingStrategy_setDeploymentMinimum
=== RUN   TestAccECSService_replicaSchedulingStrategy
=== PAUSE TestAccECSService_replicaSchedulingStrategy
=== RUN   TestAccECSService_ServiceRegistries_basic
=== PAUSE TestAccECSService_ServiceRegistries_basic
=== RUN   TestAccECSService_ServiceRegistries_container
=== PAUSE TestAccECSService_ServiceRegistries_container
=== RUN   TestAccECSService_ServiceRegistries_changes
=== PAUSE TestAccECSService_ServiceRegistries_changes
=== RUN   TestAccECSService_Tags_basic
=== PAUSE TestAccECSService_Tags_basic
=== RUN   TestAccECSService_Tags_managed
=== PAUSE TestAccECSService_Tags_managed
=== RUN   TestAccECSService_Tags_propagate
=== PAUSE TestAccECSService_Tags_propagate
=== RUN   TestAccECSService_executeCommand
=== PAUSE TestAccECSService_executeCommand
=== CONT  TestAccECSService_basic
=== CONT  TestAccECSService_multipleTargetGroups
--- PASS: TestAccECSService_basic (89.50s)
=== CONT  TestAccECSService_DaemonSchedulingStrategy_basic
--- PASS: TestAccECSService_DaemonSchedulingStrategy_basic (43.07s)
=== CONT  TestAccECSService_executeCommand
--- PASS: TestAccECSService_executeCommand (67.07s)
=== CONT  TestAccECSService_Tags_propagate
--- PASS: TestAccECSService_Tags_propagate (100.98s)
=== CONT  TestAccECSService_Tags_managed
--- PASS: TestAccECSService_multipleTargetGroups (319.75s)
=== CONT  TestAccECSService_Tags_basic
--- PASS: TestAccECSService_Tags_managed (59.99s)
=== CONT  TestAccECSService_ServiceRegistries_changes
--- PASS: TestAccECSService_Tags_basic (104.04s)
=== CONT  TestAccECSService_replicaSchedulingStrategy
--- PASS: TestAccECSService_replicaSchedulingStrategy (90.51s)
=== CONT  TestAccECSService_DaemonSchedulingStrategy_setDeploymentMinimum
--- PASS: TestAccECSService_DaemonSchedulingStrategy_setDeploymentMinimum (40.39s)
=== CONT  TestAccECSService_iamRole
--- PASS: TestAccECSService_iamRole (71.33s)
=== CONT  TestAccECSService_alb
--- PASS: TestAccECSService_ServiceRegistries_changes (266.71s)
=== CONT  TestAccECSService_clusterName
--- PASS: TestAccECSService_clusterName (87.34s)
=== CONT  TestAccECSService_loadBalancerChanges
--- PASS: TestAccECSService_alb (317.41s)
=== CONT  TestAccECSService_deploymentCircuitBreaker
--- PASS: TestAccECSService_loadBalancerChanges (301.35s)
=== CONT  TestAccECSService_DeploymentValues_minZeroMaxOneHundred
--- PASS: TestAccECSService_deploymentCircuitBreaker (87.56s)
=== CONT  TestAccECSService_DeploymentValues_basic
--- PASS: TestAccECSService_DeploymentValues_minZeroMaxOneHundred (87.41s)
=== CONT  TestAccECSService_DeploymentControllerType_external
--- PASS: TestAccECSService_DeploymentValues_basic (87.63s)
=== CONT  TestAccECSService_DeploymentControllerType_codeDeployUpdateDesiredCountAndHealthCheckGracePeriod
--- PASS: TestAccECSService_DeploymentControllerType_external (42.55s)
=== CONT  TestAccECSService_ServiceRegistries_basic
--- PASS: TestAccECSService_ServiceRegistries_basic (155.03s)
=== CONT  TestAccECSService_ServiceRegistries_container
--- PASS: TestAccECSService_ServiceRegistries_container (170.69s)
=== CONT  TestAccECSService_DeploymentControllerType_codeDeploy
--- PASS: TestAccECSService_DeploymentControllerType_codeDeployUpdateDesiredCountAndHealthCheckGracePeriod (384.12s)
=== CONT  TestAccECSService_CapacityProviderStrategy_update
--- PASS: TestAccECSService_DeploymentControllerType_codeDeploy (330.96s)
=== CONT  TestAccECSService_healthCheckGracePeriodSeconds
--- PASS: TestAccECSService_CapacityProviderStrategy_update (335.18s)
=== CONT  TestAccECSService_renamedCluster
--- PASS: TestAccECSService_renamedCluster (87.67s)
=== CONT  TestAccECSService_LaunchTypeFargate_basic
--- PASS: TestAccECSService_LaunchTypeFargate_basic (133.12s)
=== CONT  TestAccECSService_familyAndRevision
--- PASS: TestAccECSService_healthCheckGracePeriodSeconds (321.01s)
=== CONT  TestAccECSService_LaunchTypeEC2_network
--- PASS: TestAccECSService_familyAndRevision (80.70s)
=== CONT  TestAccECSService_LaunchTypeFargate_updateWaitForSteadyState
--- PASS: TestAccECSService_LaunchTypeEC2_network (88.74s)
=== CONT  TestAccECSService_LaunchTypeFargate_waitForSteadyState
--- PASS: TestAccECSService_LaunchTypeFargate_updateWaitForSteadyState (166.19s)
=== CONT  TestAccECSService_LaunchTypeFargate_platformVersion
--- PASS: TestAccECSService_LaunchTypeFargate_waitForSteadyState (185.04s)
=== CONT  TestAccECSService_CapacityProviderStrategy_multiple
--- PASS: TestAccECSService_LaunchTypeFargate_platformVersion (117.01s)
=== CONT  TestAccECSService_PlacementStrategy_basic
--- PASS: TestAccECSService_CapacityProviderStrategy_multiple (114.26s)
=== CONT  TestAccECSService_disappears
--- PASS: TestAccECSService_PlacementStrategy_basic (123.05s)
=== CONT  TestAccECSService_PlacementStrategy_missing
--- PASS: TestAccECSService_PlacementStrategy_missing (0.76s)
=== CONT  TestAccECSService_basicImport
--- PASS: TestAccECSService_disappears (71.12s)
=== CONT  TestAccECSService_PlacementConstraints_emptyExpression
--- PASS: TestAccECSService_basicImport (91.10s)
=== CONT  TestAccECSService_PlacementConstraints_basic
--- PASS: TestAccECSService_PlacementConstraints_emptyExpression (86.35s)
=== CONT  TestAccECSService_PlacementStrategy_unnormalized
--- PASS: TestAccECSService_PlacementConstraints_basic (98.10s)
=== CONT  TestAccECSService_CapacityProviderStrategy_forceNewDeployment
--- PASS: TestAccECSService_PlacementStrategy_unnormalized (86.65s)
=== CONT  TestAccECSService_CapacityProviderStrategy_basic
--- PASS: TestAccECSService_CapacityProviderStrategy_forceNewDeployment (147.74s)
=== CONT  TestAccECSService_forceNewDeployment
--- PASS: TestAccECSService_forceNewDeployment (73.27s)
--- PASS: TestAccECSService_CapacityProviderStrategy_basic (218.72s)
PASS
ok  	github.com/hashicorp/terraform-provider-aws/internal/service/ecs	2981.217s

@ewbankkit
Copy link
Contributor

@kevinscholz Thanks for the contribution 🎉 👏.
I changed the ELB to an ALB to address the acceptance test failure.

@kevinkupski
Copy link
Contributor Author

@ewbankkit Thank you for the quick response and you efforts. Actually I did not change the tests to the target groups for the following reason:

In case somebody is now (after releasing this PR) using the classic load balancer and change it for an ECS service, TF detects it as updatable, tries it and it fails. So we basically break updating ECS services when using a classic load balancer. That's why I posted the question in the description. Feel free to correct me if I'm wrong.

@github-actions
Copy link

github-actions bot commented May 5, 2022

I'm going to lock this pull request because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.
If you have found a problem that seems related to this change, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators May 5, 2022
@kevinkupski kevinkupski deleted the fix-recreate-aws_ecs_service branch May 5, 2022 14:23
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement Requests to existing resources that expand the functionality or scope. service/ecs Issues and PRs that pertain to the ecs service. size/M Managed by automation to categorize the size of a PR. tests PRs: expanded test coverage. Issues: expanded coverage, enhancements to test infrastructure.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants