From 4db657cc4bef37b5cd1e0746aae7cd2727376f7e Mon Sep 17 00:00:00 2001 From: knguyen100000010 Date: Tue, 4 Jun 2024 10:44:37 -0400 Subject: [PATCH] check for az rebalance disabled --- .../deploy_board/templates/environs/env_landing.html | 2 +- deploy-board/deploy_board/webapp/env_views.py | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/deploy-board/deploy_board/templates/environs/env_landing.html b/deploy-board/deploy_board/templates/environs/env_landing.html index 80839b5cdd..8f45cab084 100644 --- a/deploy-board/deploy_board/templates/environs/env_landing.html +++ b/deploy-board/deploy_board/templates/environs/env_landing.html @@ -332,7 +332,7 @@ {% endif %} -{% if True %} +{% if "AZRebalance" in asg_suspended_processes %}
× Your cluster is not enabled for automatic AZ rebalancing. If your service is stateless, consider enabling it here. diff --git a/deploy-board/deploy_board/webapp/env_views.py b/deploy-board/deploy_board/webapp/env_views.py index ebeef6332a..659de2b394 100644 --- a/deploy-board/deploy_board/webapp/env_views.py +++ b/deploy-board/deploy_board/webapp/env_views.py @@ -443,6 +443,8 @@ def get(self, request, name, stage=None): cluster_refresh_suggestion_for_golden_ami = _gen_message_for_refreshing_cluster(request, last_cluster_refresh_status, latest_succeeded_base_image_update_event, env) + asg_suspended_processes = _get_asg_suspended_processes(request, env) or [] + if not env['deployId']: capacity_hosts = deploys_helper.get_missing_hosts(request, name, stage) provisioning_hosts = environ_hosts_helper.get_hosts(request, name, stage) @@ -484,6 +486,7 @@ def get(self, request, name, stage=None): "subAccount": AWS_SUB_ACCOUNT, "accounts": accounts, "pindeploy_config": pindeploy_config, + "asg_suspended_processes": asg_suspended_processes, }) showMode = 'complete' account = 'all' @@ -575,6 +578,7 @@ def get(self, request, name, stage=None): "subAccount": AWS_SUB_ACCOUNT, "accounts": accounts, "pindeploy_config": pindeploy_config, + "asg_suspended_processes": asg_suspended_processes, } response = render(request, 'environs/env_landing.html', context) @@ -586,6 +590,13 @@ def get(self, request, name, stage=None): return response +def _get_asg_suspended_processes(request, env): + try: + cluster_name = get_cluster_name(request, env.get('envName'), env.get('stageName'), env=env) + return autoscaling_groups_helper.get_disabled_asg_actions(request, cluster_name) + except: + return None + def _gen_message_for_refreshing_cluster(request, last_cluster_refresh_status, latest_succeeded_base_image_update_event, env): try: group_name = get_group_name(request, env.get('envName'), env.get('stageName'), env=env)