diff options
| author | Kevin L. Mitchell <kevin.mitchell@rackspace.com> | 2011-09-08 15:41:27 +0000 |
|---|---|---|
| committer | Kevin L. Mitchell <kevin.mitchell@rackspace.com> | 2011-09-08 15:41:27 +0000 |
| commit | d5babda2742ffca8034866efb21fe0fbce861eab (patch) | |
| tree | 37f43dad777fb4fba8fe9fccac25ebdaefb7e142 /bin | |
| parent | 91ac11af8cd8b06feb2bd53bc39ba4636977e7b5 (diff) | |
| parent | bb3b61b61dc4b45fba4bdab7ead69af239eac40a (diff) | |
| download | nova-d5babda2742ffca8034866efb21fe0fbce861eab.tar.gz nova-d5babda2742ffca8034866efb21fe0fbce861eab.tar.xz nova-d5babda2742ffca8034866efb21fe0fbce861eab.zip | |
pull-up from trunk
Diffstat (limited to 'bin')
| -rwxr-xr-x | bin/nova-manage | 41 |
1 files changed, 32 insertions, 9 deletions
diff --git a/bin/nova-manage b/bin/nova-manage index c3b2c71ce..bc191b2f0 100755 --- a/bin/nova-manage +++ b/bin/nova-manage @@ -59,11 +59,11 @@ import glob import json import math import netaddr +from optparse import OptionParser import os import sys import time -from optparse import OptionParser # If ../nova/__init__.py exists, add ../ to Python search path, so that # it will override what happens to be installed in /usr/(local/)lib/python... @@ -685,10 +685,17 @@ class NetworkCommands(object): help='Multi host') @args('--dns1', dest="dns1", metavar="<DNS Address>", help='First DNS') @args('--dns2', dest="dns2", metavar="<DNS Address>", help='Second DNS') + @args('--uuid', dest="net_uuid", metavar="<network uuid>", + help='Network UUID') + @args('--project_id', dest="project_id", metavar="<project id>", + help='Project id') + @args('--priority', dest="priority", metavar="<number>", + help='Network interface priority') def create(self, label=None, fixed_range_v4=None, num_networks=None, network_size=None, multi_host=None, vlan_start=None, vpn_start=None, fixed_range_v6=None, gateway_v6=None, - bridge=None, bridge_interface=None, dns1=None, dns2=None): + bridge=None, bridge_interface=None, dns1=None, dns2=None, + project_id=None, priority=None, uuid=None): """Creates fixed ips for host by range""" # check for certain required inputs @@ -765,7 +772,10 @@ class NetworkCommands(object): bridge=bridge, bridge_interface=bridge_interface, dns1=dns1, - dns2=dns2) + dns2=dns2, + project_id=project_id, + priority=priority, + uuid=uuid) def list(self): """List all created networks""" @@ -790,16 +800,29 @@ class NetworkCommands(object): network.project_id, network.uuid) + def quantum_list(self): + """List all created networks with Quantum-relevant fields""" + _fmt = "%-32s\t%-10s\t%-10s\t%s , %s" + print _fmt % (_('uuid'), + _('project'), + _('priority'), + _('cidr_v4'), + _('cidr_v6')) + for network in db.network_get_all(context.get_admin_context()): + print _fmt % (network.uuid, + network.project_id, + network.priority, + network.cidr, + network.cidr_v6) + @args('--network', dest="fixed_range", metavar='<x.x.x.x/yy>', help='Network to delete') def delete(self, fixed_range): """Deletes a network""" - network = db.network_get_by_cidr(context.get_admin_context(), \ - fixed_range) - if network.project_id is not None: - raise ValueError(_('Network must be disassociated from project %s' - ' before delete' % network.project_id)) - db.network_delete_safe(context.get_admin_context(), network.id) + + # delete the network + net_manager = utils.import_object(FLAGS.network_manager) + net_manager.delete_network(context.get_admin_context(), fixed_range) @args('--network', dest="fixed_range", metavar='<x.x.x.x/yy>', help='Network to modify') |
