summaryrefslogtreecommitdiff
path: root/openstackclient/compute/v2
diff options
context:
space:
mode:
authorZuul <zuul@review.openstack.org>2018-06-24 13:28:44 +0000
committerGerrit Code Review <review@openstack.org>2018-06-24 13:28:44 +0000
commit5d2bd2a7380645bafb0f51e812752754c45ac88f (patch)
treeddf9b61f53d7d223702a3127bb6dc1cfd05cd9e4 /openstackclient/compute/v2
parent4ffb3a905a7ce2af98f86e276afd00a0e3d0ae2e (diff)
parent956eabe96783727d6e86e3896cacf89fb893e0f5 (diff)
downloadpython-openstackclient-5d2bd2a7380645bafb0f51e812752754c45ac88f.tar.gz
Merge "compute: limit the service's force down command above 2.10"
Diffstat (limited to 'openstackclient/compute/v2')
-rw-r--r--openstackclient/compute/v2/service.py26
1 files changed, 16 insertions, 10 deletions
diff --git a/openstackclient/compute/v2/service.py b/openstackclient/compute/v2/service.py
index 7331d29d..18e6d9d9 100644
--- a/openstackclient/compute/v2/service.py
+++ b/openstackclient/compute/v2/service.py
@@ -17,6 +17,7 @@
import logging
+from novaclient import api_versions
from osc_lib.command import command
from osc_lib import exceptions
from osc_lib import utils
@@ -192,18 +193,23 @@ class SetService(command.Command):
result += 1
force_down = None
- try:
- if parsed_args.down:
- force_down = True
- if parsed_args.up:
- force_down = False
- if force_down is not None:
+ if parsed_args.down:
+ force_down = True
+ if parsed_args.up:
+ force_down = False
+ if force_down is not None:
+ if compute_client.api_version < api_versions.APIVersion(
+ '2.11'):
+ msg = _('--os-compute-api-version 2.11 or later is '
+ 'required')
+ raise exceptions.CommandError(msg)
+ try:
cs.force_down(parsed_args.host, parsed_args.service,
force_down=force_down)
- except Exception:
- state = "down" if force_down else "up"
- LOG.error("Failed to set service state to %s", state)
- result += 1
+ except Exception:
+ state = "down" if force_down else "up"
+ LOG.error("Failed to set service state to %s", state)
+ result += 1
if result > 0:
msg = _("Compute service %(service)s of host %(host)s failed to "