From f470f4bde288aa7d074b7fed84b84ec45e375f3a Mon Sep 17 00:00:00 2001 From: Piradeep Kandasamy <44981951+piradeepk@users.noreply.github.com> Date: Mon, 21 Dec 2020 17:20:15 -0500 Subject: [PATCH] fix(ecs): add application name filter to findCluster (#5168) (cherry picked from commit d43a0ea5e2d4537056ca722bca98ca3e97086f45) --- .../ecs/provider/view/EcsServerClusterProvider.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/clouddriver-ecs/src/main/java/com/netflix/spinnaker/clouddriver/ecs/provider/view/EcsServerClusterProvider.java b/clouddriver-ecs/src/main/java/com/netflix/spinnaker/clouddriver/ecs/provider/view/EcsServerClusterProvider.java index fe476600021..6fc1c978055 100644 --- a/clouddriver-ecs/src/main/java/com/netflix/spinnaker/clouddriver/ecs/provider/view/EcsServerClusterProvider.java +++ b/clouddriver-ecs/src/main/java/com/netflix/spinnaker/clouddriver/ecs/provider/view/EcsServerClusterProvider.java @@ -37,6 +37,7 @@ import com.netflix.spinnaker.clouddriver.ecs.model.EcsServerGroup; import com.netflix.spinnaker.clouddriver.ecs.model.EcsTask; import com.netflix.spinnaker.clouddriver.ecs.model.TaskDefinition; +import com.netflix.spinnaker.clouddriver.ecs.names.MonikerHelper; import com.netflix.spinnaker.clouddriver.ecs.security.NetflixECSCredentials; import com.netflix.spinnaker.clouddriver.ecs.services.ContainerInformationService; import com.netflix.spinnaker.clouddriver.ecs.services.SubnetSelector; @@ -533,8 +534,9 @@ public ServerGroup getServerGroup( try { AmazonCredentials credentials = getEcsCredentials(account); - // Can't filter by application as there's not enough information in the serverGroupName - clusterMap = findClusters(clusterMap, credentials); + Moniker moniker = MonikerHelper.applicationNameToMoniker(serverGroupName); + log.debug("App Name is: " + moniker.getApp()); + clusterMap = findClusters(clusterMap, credentials, moniker.getApp()); } catch (NoSuchElementException exception) { /* This is ugly, but not sure how else to do it. If we don't have creds due * to not being an ECS account, there's nothing to do here, and we should