From 96a483543e5cc2917749e1a3d29985ea19ad13ac Mon Sep 17 00:00:00 2001 From: Neil Ye Date: Mon, 10 Jun 2019 19:47:23 +0800 Subject: [PATCH] feat(provider/azure): Enable highlight effect for server group in load balancer section (#3768) --- .../appgateway/view/AzureAppGatewayProvider.groovy | 10 ++++++++-- .../loadbalancer/view/AzureLoadBalancerProvider.groovy | 10 ++++++++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/clouddriver-azure/src/main/groovy/com/netflix/spinnaker/clouddriver/azure/resources/appgateway/view/AzureAppGatewayProvider.groovy b/clouddriver-azure/src/main/groovy/com/netflix/spinnaker/clouddriver/azure/resources/appgateway/view/AzureAppGatewayProvider.groovy index 4a7bebd0fa0..a1969ad8e42 100644 --- a/clouddriver-azure/src/main/groovy/com/netflix/spinnaker/clouddriver/azure/resources/appgateway/view/AzureAppGatewayProvider.groovy +++ b/clouddriver-azure/src/main/groovy/com/netflix/spinnaker/clouddriver/azure/resources/appgateway/view/AzureAppGatewayProvider.groovy @@ -24,8 +24,10 @@ import com.netflix.spinnaker.cats.cache.RelationshipCacheFilter import com.netflix.spinnaker.clouddriver.azure.AzureCloudProvider import com.netflix.spinnaker.clouddriver.azure.common.AzureUtilities import com.netflix.spinnaker.clouddriver.azure.resources.appgateway.model.AzureAppGatewayDescription +import com.netflix.spinnaker.clouddriver.azure.resources.cluster.view.AzureClusterProvider import com.netflix.spinnaker.clouddriver.azure.resources.common.cache.Keys import com.netflix.spinnaker.clouddriver.azure.resources.loadbalancer.model.AzureLoadBalancer +import com.netflix.spinnaker.clouddriver.azure.resources.servergroup.model.AzureServerGroupDescription import com.netflix.spinnaker.clouddriver.model.LoadBalancerProvider import com.netflix.spinnaker.clouddriver.model.LoadBalancerServerGroup import com.netflix.spinnaker.clouddriver.security.AccountCredentialsProvider @@ -44,6 +46,9 @@ class AzureAppGatewayProvider implements LoadBalancerProvider @Autowired AccountCredentialsProvider accountCredentialsProvider + @Autowired + AzureClusterProvider clusterProvider + @Autowired AzureAppGatewayProvider(AzureCloudProvider azureCloudProvider, Cache cacheView, ObjectMapper objectMapper) { this.azureCloudProvider = azureCloudProvider @@ -91,10 +96,11 @@ class AzureAppGatewayProvider implements LoadBalancerProvider loadBalancerType: AzureLoadBalancer.AzureLoadBalancerType.AZURE_APPLICATION_GATEWAY ) description.serverGroups?.each { serverGroup -> - // TODO: add proper check for enable/disable server groups + AzureServerGroupDescription asg = clusterProvider.getServerGroup(loadBalancer.account, loadBalancer.region, serverGroup) + loadBalancer.serverGroups.add(new LoadBalancerServerGroup ( name: serverGroup, - isDisabled: false, + isDisabled: asg.isDisabled(), detachedInstances: [], instances: [], cloudProvider: AzureCloudProvider.ID diff --git a/clouddriver-azure/src/main/groovy/com/netflix/spinnaker/clouddriver/azure/resources/loadbalancer/view/AzureLoadBalancerProvider.groovy b/clouddriver-azure/src/main/groovy/com/netflix/spinnaker/clouddriver/azure/resources/loadbalancer/view/AzureLoadBalancerProvider.groovy index 3bb0873416a..89933e7b32f 100644 --- a/clouddriver-azure/src/main/groovy/com/netflix/spinnaker/clouddriver/azure/resources/loadbalancer/view/AzureLoadBalancerProvider.groovy +++ b/clouddriver-azure/src/main/groovy/com/netflix/spinnaker/clouddriver/azure/resources/loadbalancer/view/AzureLoadBalancerProvider.groovy @@ -23,9 +23,11 @@ import com.netflix.spinnaker.cats.cache.CacheData import com.netflix.spinnaker.cats.cache.RelationshipCacheFilter import com.netflix.spinnaker.clouddriver.azure.AzureCloudProvider import com.netflix.spinnaker.clouddriver.azure.common.AzureUtilities +import com.netflix.spinnaker.clouddriver.azure.resources.cluster.view.AzureClusterProvider import com.netflix.spinnaker.clouddriver.azure.resources.common.cache.Keys import com.netflix.spinnaker.clouddriver.azure.resources.loadbalancer.model.AzureLoadBalancer import com.netflix.spinnaker.clouddriver.azure.resources.loadbalancer.model.AzureLoadBalancerDescription +import com.netflix.spinnaker.clouddriver.azure.resources.servergroup.model.AzureServerGroupDescription import com.netflix.spinnaker.clouddriver.model.LoadBalancerProvider import com.netflix.spinnaker.clouddriver.model.LoadBalancerServerGroup import com.netflix.spinnaker.clouddriver.security.AccountCredentialsProvider @@ -49,6 +51,9 @@ class AzureLoadBalancerProvider implements LoadBalancerProvider - // TODO: add proper check for enable/disable server groups + AzureServerGroupDescription asg = clusterProvider.getServerGroup(loadBalancer.account, loadBalancer.region, serverGroup) + loadBalancer.serverGroups.add(new LoadBalancerServerGroup ( name: serverGroup, - isDisabled: false, + isDisabled: asg.isDisabled(), detachedInstances: [], instances: [], cloudProvider: AzureCloudProvider.ID