allow sharing private network between slices, eliminate smbaker-slice-net testing restriction
diff --git a/planetstack/openstack/driver.py b/planetstack/openstack/driver.py
index 41a653d..5bb1eb2 100644
--- a/planetstack/openstack/driver.py
+++ b/planetstack/openstack/driver.py
@@ -160,12 +160,12 @@
if router and subnet:
self.shell.quantum.remove_interface_router(router_id, {'subnet_id': subnet_id})
- def create_network(self, name):
+ def create_network(self, name, shared=False):
nets = self.shell.quantum.list_networks(name=name)['networks']
if nets:
net = nets[0]
else:
- net = self.shell.quantum.create_network({'network': {'name': name}})['network']
+ net = self.shell.quantum.create_network({'network': {'name': name, 'shared': shared}})['network']
return net
def delete_network(self, id):
diff --git a/planetstack/openstack/manager.py b/planetstack/openstack/manager.py
index e96e9f8..2fb4ff8 100644
--- a/planetstack/openstack/manager.py
+++ b/planetstack/openstack/manager.py
@@ -316,11 +316,7 @@
@require_enabled
def save_sliver(self, sliver):
if not sliver.instance_id:
- if (sliver.slice.name == "smbaker-slice-8") or (sliver.slice.name.startswith("smbaker-slice-net")):
- # only inflict this pain on myself, for now...
- nics = self.get_requested_networks(sliver.slice)
- else:
- nics = None
+ nics = self.get_requested_networks(sliver.slice)
file("/tmp/scott-manager","a").write("slice: %s\nreq: %s\n" % (str(sliver.slice.name), str(nics)))
slice_memberships = SliceMembership.objects.filter(slice=sliver.slice)
pubkeys = [sm.user.public_key for sm in slice_memberships if sm.user.public_key]
@@ -420,7 +416,7 @@
network_name = network.name
# create network
- os_network = self.driver.create_network(network_name)
+ os_network = self.driver.create_network(network_name, shared=True)
network.network_id = os_network['id']
# create router