Updated to latest docker-py version.
[osm/vim-emu.git] / src / emuvim / api / openstack / openstack_api_endpoint.py
index b6347eb..34d9906 100755 (executable)
 # the Horizon 2020 and 5G-PPP programmes. The authors would like to
 # acknowledge the contributions of their colleagues of the SONATA
 # partner consortium (www.sonata-nfv.eu).
-from manage import OpenstackManage
+from emuvim.api.openstack.manage import OpenstackManage
 
-from openstack_dummies.glance_dummy_api import GlanceDummyApi
-from openstack_dummies.heat_dummy_api import HeatDummyApi
-from openstack_dummies.keystone_dummy_api import KeystoneDummyApi
-from openstack_dummies.neutron_dummy_api import NeutronDummyApi
-from openstack_dummies.nova_dummy_api import NovaDummyApi
+from emuvim.api.openstack.openstack_dummies.glance_dummy_api import \
+    GlanceDummyApi
+from emuvim.api.openstack.openstack_dummies.heat_dummy_api import \
+    HeatDummyApi
+from emuvim.api.openstack.openstack_dummies.keystone_dummy_api import \
+    KeystoneDummyApi
+from emuvim.api.openstack.openstack_dummies.neutron_dummy_api import \
+    NeutronDummyApi
+from emuvim.api.openstack.openstack_dummies.nova_dummy_api import \
+    NovaDummyApi
 
 import logging
-import threading
-import compute
+import emuvim.api.openstack.compute as compute
 import socket
 import time
 
@@ -99,10 +103,7 @@ class OpenstackApiEndpoint():
         for c in self.openstack_endpoints.values():
             c.compute = self.compute
             c.manage = self.manage
-            c.server_thread = threading.Thread(target=c._start_flask, args=())
-            c.server_thread.daemon = True
-            c.server_thread.name = c.__class__.__name__
-            c.server_thread.start()
+            c.start()
             if wait_for_port:
                 self._wait_for_port(c.ip, c.port)
 
@@ -112,10 +113,10 @@ class OpenstackApiEndpoint():
         """
         for c in self.openstack_endpoints.values():
             c.stop()
-        for c in self.openstack_endpoints.values():
-        #    if c.server_thread:
-        #        print("Waiting for WSGIServers to be stopped ...")
-        #        c.server_thread.join()
+        for c in self.openstack_endpoints.values():
+            if c.server_thread:
+                c.server_thread.join()
+        self.manage.stop()
 
     def _wait_for_port(self, ip, port):
         for i in range(0, 10):