summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordanwent@gmail.com <>2011-08-28 19:12:43 -0700
committerdanwent@gmail.com <>2011-08-28 19:12:43 -0700
commit822d92ed1f6a5f2f0951c5e43be6ce0c8fb75e65 (patch)
tree41b64340198bca1d146ded860b91e88128f96dc2
parent431cd5d17780aa7ea9d03b028a78ec4e20b22440 (diff)
remove fake IPAM lib, since qmanager must now access nova DB directly
-rw-r--r--nova/network/quantum/fake.py124
-rw-r--r--nova/tests/test_quantum.py8
2 files changed, 0 insertions, 132 deletions
diff --git a/nova/network/quantum/fake.py b/nova/network/quantum/fake.py
index 3f6996e63..00cdd8e08 100644
--- a/nova/network/quantum/fake.py
+++ b/nova/network/quantum/fake.py
@@ -91,127 +91,3 @@ class FakeQuantumClientConnection:
return (net_id, port_id)
return (None, None)
-
-
-def get_ipam_lib(net_man):
- return FakeQuantumIPAMLib()
-
-
-class FakeQuantumIPAMLib():
-
- def __init__(self):
- self.subnets = {}
-
- def create_subnet(self, context, label, tenant_id, quantum_net_id,
- priority, cidr=None, gateway_v6=None,
- cidr_v6=None, dns1=None, dns2=None):
- if int(cidr.split("/")[1]) != 24:
- raise Exception("fake ipam_lib only supports /24s")
- v4_ips = []
- net_start = cidr[0:cidr.rfind(".") + 1]
- subnet_size = int(math.pow(2, (32 - int(cidr.split("/")[1]))))
- for i in xrange(2, subnet_size - 1):
- v4_ips.append({"ip": net_start + str(i),
- "allocated": False,
- "virtual_interface_id": None,
- "instance_id": None})
- self.subnets[quantum_net_id] = {\
- "label": label,
- "priority": priority,
- "gateway": net_start + "1",
- "netmask": "255.255.255.0",
- "broadcast": net_start + "255",
- "cidr": cidr,
- "gateway_v6": gateway_v6,
- "cidr_v6": cidr_v6,
- "dns1": dns1,
- "dns2": dns2,
- "project_id": tenant_id,
- "v4_ips": v4_ips}
-
- def get_network_id_by_cidr(self, context, cidr, project_id):
- for net_id, s in self.subnets.items():
- if s['cidr'] == cidr or s['cidr_v6'] == cidr:
- return net_id
- return None
-
- def delete_subnets_by_net_id(self, context, net_id, project_id):
- self.verify_subnet_exists(context, project_id, net_id)
- del self.subnets[net_id]
-
- def get_project_and_global_net_ids(self, context, project_id):
- net_list = []
- id_priority_map = {}
- for nid, s in self.subnets.items():
- if s['project_id'] == project_id or \
- s['project_id'] == None:
- net_list.append((nid, s['project_id']))
- id_priority_map[nid] = s['priority']
- return sorted(net_list, key=lambda x: id_priority_map[x[0]])
-
- def allocate_fixed_ip(self, context, tenant_id, quantum_net_id, vif_rec):
- subnet = self.subnets[quantum_net_id]
- for i in xrange(0, len(subnet['v4_ips'])):
- ip = subnet['v4_ips'][i]
- if not ip['allocated']:
- subnet['v4_ips'][i] = {'ip': ip['ip'],
- 'allocated': True,
- 'virtual_interface_id': vif_rec['uuid'],
- 'instance_id': vif_rec['instance_id']}
- return
- raise Exception("Unable to find available IP for net '%s'" %\
- quantum_net_id)
-
- def get_subnets_by_net_id(self, context, tenant_id, net_id):
- self.verify_subnet_exists(context, tenant_id, net_id)
-
- subnet_data = self.subnets[net_id]
- subnet_data_v4 = {
- 'network_id': net_id,
- 'cidr': subnet_data['cidr'],
- 'gateway': subnet_data['gateway'],
- 'broadcast': subnet_data['broadcast'],
- 'netmask': subnet_data['netmask'],
- 'dns1': subnet_data['dns1'],
- 'dns2': subnet_data['dns2']}
- subnet_data_v6 = {
- 'network_id': net_id,
- 'cidr': subnet_data['cidr_v6'],
- 'gateway': subnet_data['gateway_v6'],
- 'broadcast': None,
- 'netmask': None,
- 'dns1': None,
- 'dns2': None}
- return (subnet_data_v4, subnet_data_v6)
-
- def get_v6_ips_by_interface(self, context, net_id, vif_id, project_id):
- self.verify_subnet_exists(context, project_id, net_id)
-
- subnet_data = self.subnets[net_id]
- if subnet_data['cidr_v6']:
- ip = ipv6.to_global(subnet_data['cidr_v6'],
- "ca:fe:de:ad:be:ef",
- project_id)
- return [ip]
- return []
-
- def get_v4_ips_by_interface(self, context, net_id, vif_id, project_id):
- self.verify_subnet_exists(context, project_id, net_id)
-
- subnet_data = self.subnets[net_id]
- for ip in subnet_data['v4_ips']:
- if ip['virtual_interface_id'] == vif_id:
- return [ip['ip']]
- return []
-
- def verify_subnet_exists(self, context, tenant_id, quantum_net_id):
- if quantum_net_id not in self.subnets:
- raise exception.NetworkNotFound(network_id=quantum_net_id)
-
- def deallocate_ips_by_vif(self, context, tenant_id, net_id, vif_ref):
- s = self.subnets[net_id]
- for ip in s['v4_ips']:
- if ip['virtual_interface_id'] == vif_ref['id']:
- ip['allocated'] = False
- ip['instance_id'] = None
- ip['virtual_interface_id'] = None
diff --git a/nova/tests/test_quantum.py b/nova/tests/test_quantum.py
index ae9900b67..e7a8a01fa 100644
--- a/nova/tests/test_quantum.py
+++ b/nova/tests/test_quantum.py
@@ -224,14 +224,6 @@ class QuantumTestCaseBase(object):
self.net_man.validate_networks, ctx, [("", None)])
-class QuantumFakeIPAMTestCase(QuantumTestCaseBase, test.TestCase):
-
- def setUp(self):
- super(QuantumFakeIPAMTestCase, self).setUp()
- self.net_man = quantum_manager.QuantumManager( \
- ipam_lib="nova.network.quantum.fake")
-
-
class QuantumNovaIPAMTestCase(QuantumTestCaseBase, test.TestCase):
def setUp(self):