summaryrefslogtreecommitdiffstats
path: root/nova
diff options
context:
space:
mode:
authorDevin Carlen <devin.carlen@gmail.com>2011-01-31 21:29:22 +0000
committerTarmac <>2011-01-31 21:29:22 +0000
commitad6300d279cfd87061ef4cef5f1a9e96aaac2f42 (patch)
treea55453622bc8da8be92ec474d1137e9fc4b752e8 /nova
parent1cd4dfe34acaec06c96925c7903a9d8dc25fe34f (diff)
parent54779a3db8af199f4b72043aa7c1bed208fefd88 (diff)
downloadnova-ad6300d279cfd87061ef4cef5f1a9e96aaac2f42.tar.gz
nova-ad6300d279cfd87061ef4cef5f1a9e96aaac2f42.tar.xz
nova-ad6300d279cfd87061ef4cef5f1a9e96aaac2f42.zip
Enabled modification of projects using the EC2 admin API.
Diffstat (limited to 'nova')
-rw-r--r--nova/adminclient.py7
-rw-r--r--nova/api/ec2/admin.py11
2 files changed, 18 insertions, 0 deletions
diff --git a/nova/adminclient.py b/nova/adminclient.py
index 4106f0f47..c614b274c 100644
--- a/nova/adminclient.py
+++ b/nova/adminclient.py
@@ -381,6 +381,13 @@ class NovaAdminClient(object):
'MemberUsers': member_users}
return self.apiconn.get_object('RegisterProject', params, ProjectInfo)
+ def modify_project(self, projectname, manager_user=None, description=None):
+ """Modifies an existing project."""
+ params = {'Name': projectname,
+ 'ManagerUser': manager_user,
+ 'Description': description}
+ return self.apiconn.get_status('ModifyProject', params)
+
def delete_project(self, projectname):
"""Permanently deletes the specified project."""
return self.apiconn.get_object('DeregisterProject',
diff --git a/nova/api/ec2/admin.py b/nova/api/ec2/admin.py
index d7e899d12..735951082 100644
--- a/nova/api/ec2/admin.py
+++ b/nova/api/ec2/admin.py
@@ -184,6 +184,17 @@ class AdminController(object):
description=None,
member_users=None))
+ def modify_project(self, context, name, manager_user, description=None,
+ **kwargs):
+ """Modifies a project"""
+ msg = _("Modify project: %(name)s managed by"
+ " %(manager_user)s") % locals()
+ LOG.audit(msg, context=context)
+ manager.AuthManager().modify_project(name,
+ manager_user=manager_user,
+ description=description)
+ return True
+
def deregister_project(self, context, name):
"""Permanently deletes a project."""
LOG.audit(_("Delete project: %s"), name, context=context)