X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=planetstack%2Fopenstack%2Fdriver.py;h=41a653d968ad1a90dd81c0bf91e9e29485e0ce23;hb=5736872d3562b55fd9fab255ad08dbc2c5266624;hp=c4f2fd6200c7b85578a765a011c77d022db66a11;hpb=8a6d5126612ea5360d4331f6c344b1f9f8155218;p=plstackapi.git diff --git a/planetstack/openstack/driver.py b/planetstack/openstack/driver.py index c4f2fd6..41a653d 100644 --- a/planetstack/openstack/driver.py +++ b/planetstack/openstack/driver.py @@ -343,7 +343,22 @@ class OpenStackDriver: shared_networks = self.shell.quantum.list_networks(**search_opts) return shared_networks - def spawn_instance(self, name, key_name=None, hostname=None, image_id=None, security_group=None, pubkeys=[], networks=None): + def get_network_subnet(self, network_id): + subnet_id = None + subnet = None + if network_id: + os_networks = self.shell.quantum.list_networks(id=network_id)["networks"] + if os_networks: + os_network = os_networks[0] + if os_network['subnets']: + subnet_id = os_network['subnets'][0] + os_subnets = self.shell.quantum.list_subnets(id=subnet_id)['subnets'] + if os_subnets: + subnet = os_subnets[0]['cidr'] + + return (subnet_id, subnet) + + def spawn_instance(self, name, key_name=None, hostname=None, image_id=None, security_group=None, pubkeys=[], nics=None): flavor_name = self.config.nova_default_flavor flavor = self.shell.nova.flavors.find(name=flavor_name) #if not image: @@ -368,7 +383,7 @@ class OpenStackDriver: files=files, scheduler_hints=hints, availability_zone=availability_zone, - networks=networks) + nics=nics) return server def destroy_instance(self, id):