summaryrefslogtreecommitdiff
path: root/openstackclient/compute
diff options
context:
space:
mode:
authorZuul <zuul@review.openstack.org>2018-06-28 17:26:03 +0000
committerGerrit Code Review <review@openstack.org>2018-06-28 17:26:03 +0000
commit7b8873dc6b9b9248996b766c8dedbc600b5129d4 (patch)
treecc3e4a2b23ddb39cc8581061fbaf57c90277c538 /openstackclient/compute
parentddcc25e7f3e16ec4a1eef6302d7f12a07869615c (diff)
parent4a68ba625ce39de6e6d260ff06e0b0d88512f794 (diff)
downloadpython-openstackclient-7b8873dc6b9b9248996b766c8dedbc600b5129d4.tar.gz
Merge "Compute: Add description support for flavor"
Diffstat (limited to 'openstackclient/compute')
-rw-r--r--openstackclient/compute/v2/flavor.py28
1 files changed, 27 insertions, 1 deletions
diff --git a/openstackclient/compute/v2/flavor.py b/openstackclient/compute/v2/flavor.py
index 0f5dd742..2cc5f1e8 100644
--- a/openstackclient/compute/v2/flavor.py
+++ b/openstackclient/compute/v2/flavor.py
@@ -17,6 +17,7 @@
import logging
+from novaclient import api_versions
from osc_lib.cli import parseractions
from osc_lib.command import command
from osc_lib import exceptions
@@ -134,6 +135,12 @@ class CreateFlavor(command.ShowOne):
help=_("Allow <project> to access private flavor (name or ID) "
"(Must be used with --private option)"),
)
+ parser.add_argument(
+ '--description',
+ metavar='<description>',
+ help=_("Description for the flavor.(Supported by API versions "
+ "'2.55' - '2.latest'")
+ )
identity_common.add_project_domain_option_to_parser(parser)
return parser
@@ -145,6 +152,11 @@ class CreateFlavor(command.ShowOne):
msg = _("--project is only allowed with --private")
raise exceptions.CommandError(msg)
+ if parsed_args.description:
+ if compute_client.api_version < api_versions.APIVersion("2.55"):
+ msg = _("--os-compute-api-version 2.55 or later is required")
+ raise exceptions.CommandError(msg)
+
args = (
parsed_args.name,
parsed_args.ram,
@@ -154,7 +166,8 @@ class CreateFlavor(command.ShowOne):
parsed_args.ephemeral,
parsed_args.swap,
parsed_args.rxtx_factor,
- parsed_args.public
+ parsed_args.public,
+ parsed_args.description
)
flavor = compute_client.flavors.create(*args)
@@ -332,6 +345,12 @@ class SetFlavor(command.Command):
help=_('Set flavor access to project (name or ID) '
'(admin only)'),
)
+ parser.add_argument(
+ '--description',
+ metavar='<description>',
+ help=_("Set description for the flavor.(Supported by API "
+ "versions '2.55' - '2.latest'")
+ )
identity_common.add_project_domain_option_to_parser(parser)
return parser
@@ -380,6 +399,13 @@ class SetFlavor(command.Command):
raise exceptions.CommandError(_("Command Failed: One or more of"
" the operations failed"))
+ if parsed_args.description:
+ if compute_client.api_version < api_versions.APIVersion("2.55"):
+ msg = _("--os-compute-api-version 2.55 or later is required")
+ raise exceptions.CommandError(msg)
+ compute_client.flavors.update(flavor=parsed_args.flavor,
+ description=parsed_args.description)
+
class ShowFlavor(command.ShowOne):
_description = _("Display flavor details")