summaryrefslogtreecommitdiffstats
path: root/nova/utils.py
diff options
context:
space:
mode:
authorMonsyne Dragon <mdragon@rackspace.com>2011-06-28 20:37:05 +0000
committerMonsyne Dragon <mdragon@rackspace.com>2011-06-28 20:37:05 +0000
commit498f2d671573fc19d551516f7ead5da8d052ee18 (patch)
treec7214db10cb112094b0629ce7804b54c870ba997 /nova/utils.py
parent24835b0348a9a6d8bd4e40107990d1abb41538c2 (diff)
downloadnova-498f2d671573fc19d551516f7ead5da8d052ee18.tar.gz
nova-498f2d671573fc19d551516f7ead5da8d052ee18.tar.xz
nova-498f2d671573fc19d551516f7ead5da8d052ee18.zip
Refactored usage generation
Diffstat (limited to 'nova/utils.py')
-rw-r--r--nova/utils.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/nova/utils.py b/nova/utils.py
index 6d8324e5b..aee2715ba 100644
--- a/nova/utils.py
+++ b/nova/utils.py
@@ -279,6 +279,22 @@ EASIER_PASSWORD_SYMBOLS = ('23456789' # Removed: 0, 1
'ABCDEFGHJKLMNPQRSTUVWXYZ') # Removed: I, O
+def usage_from_instance(instance_ref, **kw):
+ usage_info = dict(
+ tenant_id=instance_ref['project_id'],
+ user_id=instance_ref['user_id'],
+ instance_id=instance_ref['id'],
+ instance_type=instance_ref['instance_type']['name'],
+ instance_type_id=instance_ref['instance_type_id'],
+ display_name=instance_ref['display_name'],
+ created_at=str(instance_ref['created_at']),
+ launched_at=str(instance_ref['launched_at']) \
+ if instance_ref['launched_at'] else '',
+ image_ref=instance_ref['image_ref'])
+ usage_info.update(kw)
+ return usage_info
+
+
def generate_password(length=20, symbols=DEFAULT_PASSWORD_SYMBOLS):
"""Generate a random password from the supplied symbols.