diff options
| author | Jenkins <jenkins@review.openstack.org> | 2016-07-21 22:07:50 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2016-07-21 22:07:50 +0000 |
| commit | 3e1d54299f74773b35ab5ff8eb144c99b7e9114d (patch) | |
| tree | 08cc48ee2756a048be875b99644798298fc081f5 /openstackclient/volume | |
| parent | ba34c592a717ce8d4f1d813838e7a7bb3528d09d (diff) | |
| parent | 5e8957ef7f4acea1ece06378c050021b64ea3f6f (diff) | |
| download | python-openstackclient-3e1d54299f74773b35ab5ff8eb144c99b7e9114d.tar.gz | |
Merge "Show project access for volume type"
Diffstat (limited to 'openstackclient/volume')
| -rw-r--r-- | openstackclient/volume/v2/volume_type.py | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/openstackclient/volume/v2/volume_type.py b/openstackclient/volume/v2/volume_type.py index ac11785c..62d619d0 100644 --- a/openstackclient/volume/v2/volume_type.py +++ b/openstackclient/volume/v2/volume_type.py @@ -282,8 +282,24 @@ class ShowVolumeType(command.ShowOne): volume_client = self.app.client_manager.volume volume_type = utils.find_resource( volume_client.volume_types, parsed_args.volume_type) - properties = utils.format_dict(volume_type._info.pop('extra_specs')) + properties = utils.format_dict( + volume_type._info.pop('extra_specs', {})) volume_type._info.update({'properties': properties}) + access_project_ids = None + if not volume_type.is_public: + try: + volume_type_access = volume_client.volume_type_access.list( + volume_type.id) + project_ids = [utils.get_field(item, 'project_id') + for item in volume_type_access] + # TODO(Rui Chen): This format list case can be removed after + # patch https://review.openstack.org/#/c/330223/ merged. + access_project_ids = utils.format_list(project_ids) + except Exception as e: + msg = _('Failed to get access project list for volume type ' + '%(type)s: %(e)s') + LOG.error(msg % {'type': volume_type.id, 'e': e}) + volume_type._info.update({'access_project_ids': access_project_ids}) return zip(*sorted(six.iteritems(volume_type._info))) |
