diff options
Diffstat (limited to 'snaps/openstack/create_stack.py')
-rw-r--r-- | snaps/openstack/create_stack.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/snaps/openstack/create_stack.py b/snaps/openstack/create_stack.py index 1820e2a..0ff24d6 100644 --- a/snaps/openstack/create_stack.py +++ b/snaps/openstack/create_stack.py @@ -21,6 +21,7 @@ from heatclient.exc import HTTPNotFound from snaps.openstack.create_flavor import OpenStackFlavor from snaps.openstack.create_instance import OpenStackVmInstance from snaps.openstack.create_keypairs import OpenStackKeypair +from snaps.openstack.create_router import OpenStackRouter from snaps.openstack.create_volume import OpenStackVolume from snaps.openstack.create_volume_type import OpenStackVolumeType from snaps.openstack.openstack_creator import OpenStackCloudObject @@ -234,6 +235,28 @@ class OpenStackHeatStack(OpenStackCloudObject, object): return out + def get_router_creators(self): + """ + Returns a list of router creator objects as configured by the heat + template + :return: list() of OpenStackRouter objects + """ + + neutron = neutron_utils.neutron_client(self._os_creds) + + out = list() + stack_routers = heat_utils.get_stack_routers( + self.__heat_cli, neutron, self.__stack) + + for routers in stack_routers: + settings = settings_utils.create_router_settings( + neutron, routers) + creator = OpenStackRouter(self._os_creds, settings) + out.append(creator) + creator.initialize() + + return out + def get_vm_inst_creators(self, heat_keypair_option=None): """ Returns a list of VM Instance creator objects as configured by the heat |