summaryrefslogtreecommitdiff
path: root/glanceclient/common
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2021-03-05 20:15:22 +0000
committerGerrit Code Review <review@openstack.org>2021-03-05 20:15:22 +0000
commitf802c710835e2e9ac42964c7282bbb4e539b38c5 (patch)
tree5481aa54f82e1eb80921ba2591bd0db1dc6d83b3 /glanceclient/common
parentdb512d319812542b9b007c1e70e56717f9ffabef (diff)
parente0a35a1150a7afe1e28b8d9b59a9e41951276baa (diff)
downloadpython-glanceclient-3.3.0.tar.gz
Merge "Get tasks associated with image"wallaby-em3.3.0
Diffstat (limited to 'glanceclient/common')
-rw-r--r--glanceclient/common/utils.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/glanceclient/common/utils.py b/glanceclient/common/utils.py
index 4084e0e..1691264 100644
--- a/glanceclient/common/utils.py
+++ b/glanceclient/common/utils.py
@@ -173,6 +173,34 @@ def pretty_choice_list(l):
return ', '.join("'%s'" % i for i in l)
+def has_version(client, version):
+ versions = client.get('/versions')[1].get('versions')
+ supported = ['SUPPORTED', 'CURRENT']
+ for version_struct in versions:
+ if version_struct['id'] == version:
+ return version_struct['status'] in supported
+ return False
+
+
+def print_dict_list(objects, fields):
+ pt = prettytable.PrettyTable([f for f in fields], caching=False)
+ pt.align = 'l'
+ for o in objects:
+ row = []
+ for field in fields:
+ field_name = field.lower().replace(' ', '_')
+ # NOTE (abhishekk) mapping field to actual name in the
+ # structure.
+ if field_name == 'task_id':
+ field_name = 'id'
+ data = o.get(field_name, '')
+ row.append(data)
+
+ pt.add_row(row)
+
+ print(encodeutils.safe_decode(pt.get_string()))
+
+
def print_list(objs, fields, formatters=None, field_settings=None):
'''Prints a list of objects.