From: Dan Wendlandt Date: Mon, 23 Jan 2012 05:40:30 +0000 (-0800) Subject: moving batch config out of quantum-server repo. X-Git-Url: https://review.fuel-infra.org/gitweb?a=commitdiff_plain;h=f25d1d51b825cd723f4fe3403f039c4acd0e93fe;p=openstack-build%2Fneutron-build.git moving batch config out of quantum-server repo. a commit to the python-quantumclient repo will add it there. Change-Id: Iefc293adbbf1eab552f2184f021f184511f9ddeb --- diff --git a/tools/batch_config.py b/tools/batch_config.py deleted file mode 100644 index f9684c82a..000000000 --- a/tools/batch_config.py +++ /dev/null @@ -1,113 +0,0 @@ -# vim: tabstop=4 shiftwidth=4 softtabstop=4 - -# Copyright 2011 Nicira Networks, Inc. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. -# @author: Dan Wendlandt, Nicira Networks, Inc. - -import logging as LOG -from optparse import OptionParser -import sys - -from quantum.client import Client -from quantum.manager import QuantumManager - -FORMAT = "json" -CONTENT_TYPE = "application/" + FORMAT - - -def delete_all_nets(client): - res = client.list_networks() - for n in res["networks"]: - nid = n["id"] - pres = client.list_ports(nid) - for port in pres["ports"]: - pid = port['id'] - client.detach_resource(nid, pid) - client.delete_port(nid, pid) - print "Deleted Virtual Port:%s " \ - "on Virtual Network:%s" % (pid, nid) - client.delete_network(nid) - print "Deleted Virtual Network with ID:%s" % nid - - -def create_net_with_attachments(client, net_name, iface_ids): - data = {'network': {'net-name': '%s' % net_name}} - res = client.create_network(data) - nid = res["networks"]["network"]["id"] - print "Created a new Virtual Network %s with ID:%s" % (net_name, nid) - - for iface_id in iface_ids: - res = client.create_port(nid) - new_port_id = res["ports"]["port"]["id"] - print "Created Virtual Port:%s " \ - "on Virtual Network:%s" % (new_port_id, nid) - data = {'port': {'attachment-id': '%s' % iface_id}} - client.attach_resource(nid, new_port_id, data) - print "Plugged interface \"%s\" to port:%s on network:%s" % \ - (iface_id, new_port_id, nid) - -if __name__ == "__main__": - usagestr = "Usage: %prog [OPTIONS] [args]\n" \ - "Example config-string: net1=instance-1,instance-2"\ - ":net2=instance-3,instance-4\n" \ - "This string would create two networks: \n" \ - "'net1' would have two ports, with iface-ids "\ - "instance-1 and instance-2 attached\n" \ - "'net2' would have two ports, with iface-ids"\ - " instance-3 and instance-4 attached\n" - parser = OptionParser(usage=usagestr) - parser.add_option("-H", "--host", dest="host", - type="string", default="127.0.0.1", help="ip address of api host") - parser.add_option("-p", "--port", dest="port", - type="int", default=9696, help="api poort") - parser.add_option("-s", "--ssl", dest="ssl", - action="store_true", default=False, help="use ssl") - parser.add_option("-v", "--verbose", dest="verbose", - action="store_true", default=False, help="turn on verbose logging") - parser.add_option("-d", "--delete", dest="delete", - action="store_true", default=False, \ - help="delete existing tenants networks") - - options, args = parser.parse_args() - - if options.verbose: - LOG.basicConfig(level=LOG.DEBUG) - else: - LOG.basicConfig(level=LOG.WARN) - - if len(args) < 1: - parser.print_help() - sys.exit(1) - - nets = {} - tenant_id = args[0] - if len(args) > 1: - config_str = args[1] - for net_str in config_str.split(":"): - arr = net_str.split("=") - net_name = arr[0] - nets[net_name] = arr[1].split(",") - - print "nets: %s" % str(nets) - - client = Client(options.host, options.port, options.ssl, - format='json', tenant=tenant_id) - - if options.delete: - delete_all_nets(client) - - for net_name, iface_ids in nets.items(): - create_net_with_attachments(client, net_name, iface_ids) - - sys.exit(0)