From b711c3a0ca622389b7f41021eb8ecd5d633b81d7 Mon Sep 17 00:00:00 2001 From: jichenjc Date: Mon, 22 Feb 2016 13:38:44 +0800 Subject: Add --reason for disable service disbale service allow a reason to be input as disable reason. This patch add support for it. Change-Id: I59622c3970e055ebd46bf03c33c864b6d064db28 --- openstackclient/compute/v2/service.py | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) (limited to 'openstackclient/compute') diff --git a/openstackclient/compute/v2/service.py b/openstackclient/compute/v2/service.py index 3c062724..1cc91711 100644 --- a/openstackclient/compute/v2/service.py +++ b/openstackclient/compute/v2/service.py @@ -95,14 +95,24 @@ class SetService(command.Command): dest="enabled", help="Disable a service", action="store_false") + parser.add_argument( + "--disable-reason", + default=None, + metavar="", + help="Reason for disabling the service (in quotas)" + ) return parser def take_action(self, parsed_args): compute_client = self.app.client_manager.compute - - if parsed_args.enabled: - action = compute_client.services.enable + cs = compute_client.services + + if not parsed_args.enabled: + if parsed_args.disable_reason: + cs.disable_log_reason(parsed_args.host, + parsed_args.service, + parsed_args.disable_reason) + else: + cs.disable(parsed_args.host, parsed_args.service) else: - action = compute_client.services.disable - - action(parsed_args.host, parsed_args.service) + cs.enable(parsed_args.host, parsed_args.service) -- cgit v1.2.1