diff options
author | Zuul <zuul@review.opendev.org> | 2021-10-18 09:48:48 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2021-10-18 09:48:48 +0000 |
commit | bab1a6321db72160b41d9b14bc72adab04d1a1a6 (patch) | |
tree | cdba95b1a2b4494cd50c8d57237f4ff1a6756af6 | |
parent | e96945376c1cdc69ab28e7820e3bcaf2a45fee71 (diff) | |
parent | ad30888c041e2ac1f1bf207165da72ff56d91f5d (diff) | |
download | horizon-bab1a6321db72160b41d9b14bc72adab04d1a1a6.tar.gz |
Merge "Handle an attached volume without volume_image_metadata" into stable/victoria
-rw-r--r-- | openstack_dashboard/dashboards/project/instances/tabs.py | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/openstack_dashboard/dashboards/project/instances/tabs.py b/openstack_dashboard/dashboards/project/instances/tabs.py index 686d03798..89d20b6fe 100644 --- a/openstack_dashboard/dashboards/project/instances/tabs.py +++ b/openstack_dashboard/dashboards/project/instances/tabs.py @@ -40,12 +40,19 @@ class OverviewTab(tabs.Tab): try: volume = api.cinder.volume_get( self.request, volume_id=instance.volumes[0].volumeId) - instance.image = { - 'id': volume.volume_image_metadata['image_id'], - 'name': volume.volume_image_metadata['image_name']} except Exception: exceptions.handle(self.request, _('Failed to get attached volume.')) + try: + instance.image = { + 'id': volume.volume_image_metadata['image_id'], + 'name': volume.volume_image_metadata['image_name'], + } + except (AttributeError, KeyError): + # AttributeError is raised when volume_image_metadata does not + # exist. KeyError is raised when volume_image_metadata exists + # but image_id or image_name is not included. + instance.image = None return {"instance": instance} |