summaryrefslogtreecommitdiff
path: root/openstackclient/volume
diff options
context:
space:
mode:
authorjiahui.qiang <jiahui.qiang@easystack.cn>2016-11-13 06:15:13 +0800
committerjiahui.qiang <jiahui.qiang@easystack.cn>2016-12-06 06:44:16 +0800
commitd083ddb12f4b8eb0d72bb4ff60113cd0904d8c1d (patch)
tree8e2c9ca0a74a65f52df26fcc41f6444a9aafc70d /openstackclient/volume
parent60370b46f5bbc9d3de7454f8efef4b5eae867a35 (diff)
downloadpython-openstackclient-d083ddb12f4b8eb0d72bb4ff60113cd0904d8c1d.tar.gz
Add --default option to "volume type list"
Add "--default" option to volume v2's "type list" command, it will show which volume type the volume service has set as default. Implements: bp cinder-command-support Change-Id: Iae7ebc633ebe5554cc88390a84361887ec211fb2
Diffstat (limited to 'openstackclient/volume')
-rw-r--r--openstackclient/volume/v2/volume_type.py29
1 files changed, 19 insertions, 10 deletions
diff --git a/openstackclient/volume/v2/volume_type.py b/openstackclient/volume/v2/volume_type.py
index 42ebb53e..46466783 100644
--- a/openstackclient/volume/v2/volume_type.py
+++ b/openstackclient/volume/v2/volume_type.py
@@ -160,9 +160,16 @@ class ListVolumeType(command.Lister):
'--long',
action='store_true',
default=False,
- help=_('List additional fields in output'))
+ help=_('List additional fields in output')
+ )
public_group = parser.add_mutually_exclusive_group()
public_group.add_argument(
+ "--default",
+ action='store_true',
+ default=False,
+ help=_('List the default volume type')
+ )
+ public_group.add_argument(
"--public",
action="store_true",
help=_("List only public types")
@@ -175,6 +182,7 @@ class ListVolumeType(command.Lister):
return parser
def take_action(self, parsed_args):
+ volume_client = self.app.client_manager.volume
if parsed_args.long:
columns = ['ID', 'Name', 'Is Public', 'Description', 'Extra Specs']
column_headers = [
@@ -182,14 +190,16 @@ class ListVolumeType(command.Lister):
else:
columns = ['ID', 'Name', 'Is Public']
column_headers = columns
-
- is_public = None
- if parsed_args.public:
- is_public = True
- if parsed_args.private:
- is_public = False
- data = self.app.client_manager.volume.volume_types.list(
- is_public=is_public)
+ if parsed_args.default:
+ data = [volume_client.volume_types.default()]
+ else:
+ is_public = None
+ if parsed_args.public:
+ is_public = True
+ if parsed_args.private:
+ is_public = False
+ data = volume_client.volume_types.list(
+ is_public=is_public)
return (column_headers,
(utils.get_item_properties(
s, columns,
@@ -240,7 +250,6 @@ class SetVolumeType(command.Command):
volume_type = utils.find_resource(
volume_client.volume_types, parsed_args.volume_type)
-
result = 0
kwargs = {}
if parsed_args.name: