From 2aa83044250d07efdd5c9c6655d7d643b2ceca8e Mon Sep 17 00:00:00 2001 From: praveenraghav01 Date: Wed, 1 Mar 2023 16:46:31 +0530 Subject: [PATCH 1/2] added support for stack output --- cloudlift/__init__.py | 6 ++++++ .../deployment/service_information_fetcher.py | 17 ++++++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/cloudlift/__init__.py b/cloudlift/__init__.py index 3c7e4adf..30c7efba 100644 --- a/cloudlift/__init__.py +++ b/cloudlift/__init__.py @@ -170,5 +170,11 @@ def start_session(name, environment, mfa, component): SessionCreator(name, environment).start_session(mfa, component) +@cli.command(help="Get Service stack Output details") +@_require_environment +@_require_name +def get_details(name, environment): + ServiceInformationFetcher(name, environment).get_stack_outputs() + if __name__ == '__main__': cli() diff --git a/cloudlift/deployment/service_information_fetcher.py b/cloudlift/deployment/service_information_fetcher.py index 284240b4..40aa9336 100644 --- a/cloudlift/deployment/service_information_fetcher.py +++ b/cloudlift/deployment/service_information_fetcher.py @@ -1,6 +1,6 @@ from subprocess import call - +from terminaltables import SingleTable from click import confirm, edit, prompt from cloudlift.exceptions import UnrecoverableException @@ -33,6 +33,12 @@ def init_stack_info(self): stack['Outputs'] ) ) + self.output = list( + filter( + lambda x: x['OutputKey'], + stack['Outputs'] + ) + ) self.ecs_display_names = [ svc_name['OutputKey'] for svc_name in service_name_list ] @@ -168,3 +174,12 @@ def _fetch_current_task_definition_tag(self): return commit_sha except Exception: return None + + def get_stack_outputs(self): + changes_to_show = [["Name", "Value"]] + for svc_name in self.output: + if svc_name['OutputKey'] != "CloudliftOptions": + changes_to_show.append([ + svc_name['OutputKey'], svc_name['OutputValue']]) + print(SingleTable(changes_to_show).table) + From 0096067eca189215b85e4295314d931d1bf6be59 Mon Sep 17 00:00:00 2001 From: praveenraghav01 Date: Thu, 9 Mar 2023 17:17:04 +0530 Subject: [PATCH 2/2] updated cmd name --- cloudlift/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cloudlift/__init__.py b/cloudlift/__init__.py index 30c7efba..0a71f61c 100644 --- a/cloudlift/__init__.py +++ b/cloudlift/__init__.py @@ -173,7 +173,7 @@ def start_session(name, environment, mfa, component): @cli.command(help="Get Service stack Output details") @_require_environment @_require_name -def get_details(name, environment): +def service_output(name, environment): ServiceInformationFetcher(name, environment).get_stack_outputs() if __name__ == '__main__':