~0x44/nova/bug838466

« back to all changes in this revision

Viewing changes to bin/nova-manage

  • Committer: Tarmac
  • Author(s): Vishvananda Ishaya
  • Date: 2010-10-16 19:48:57 UTC
  • mfrom: (350.1.2 scrub)
  • Revision ID: hudson@openstack.org-20101016194857-1z5ws1qss1fqzlz4
Adds a simple nova-manage command called scrub to deallocate the network and remove security groups for a projeect.

Show diffs side-by-side

added added

removed removed

Lines of Context:
297
297
    def __init__(self):
298
298
        self.manager = manager.AuthManager()
299
299
 
300
 
    def add(self, project, user):
 
300
    def add(self, project_id, user_id):
301
301
        """Adds user to project
302
 
        arguments: project user"""
303
 
        self.manager.add_to_project(user, project)
 
302
        arguments: project_id user_id"""
 
303
        self.manager.add_to_project(user_id, project_id)
304
304
 
305
305
    def create(self, name, project_manager, description=None):
306
306
        """Creates a new project
339
339
        for key, value in project_quota.iteritems():
340
340
            print '%s: %s' % (key, value)
341
341
 
342
 
    def remove(self, project, user):
 
342
    def remove(self, project_id, user_id):
343
343
        """Removes user from project
344
 
        arguments: project user"""
345
 
        self.manager.remove_from_project(user, project)
 
344
        arguments: project_id user_id"""
 
345
        self.manager.remove_from_project(user_id, project_id)
 
346
 
 
347
    def scrub(self, project_id):
 
348
        """Deletes data associated with project
 
349
        arguments: project_id"""
 
350
        ctxt = context.get_admin_context()
 
351
        network_ref = db.project_get_network(ctxt, project_id)
 
352
        db.network_disassociate(ctxt, network_ref['id'])
 
353
        groups = db.security_group_get_by_project(ctxt, project_id)
 
354
        for group in groups:
 
355
            db.security_group_destroy(ctxt, group['id'])
346
356
 
347
357
    def zipfile(self, project_id, user_id, filename='nova.zip'):
348
358
        """Exports credentials for project to a zip file