Run bundle app waits concurrently
authorTim Van Steenburgh <tvansteenburgh@gmail.com>
Tue, 1 Nov 2016 19:08:50 +0000 (15:08 -0400)
committerTim Van Steenburgh <tvansteenburgh@gmail.com>
Tue, 1 Nov 2016 19:08:50 +0000 (15:08 -0400)
juju/model.py

index cc9ee95..8a49495 100644 (file)
@@ -791,8 +791,11 @@ class Model(object):
             if pending_apps:
                 # new apps will usually be in the model by now, but if some
                 # haven't made it yet we'll need to wait on them to be added
-                await asyncio.wait([self._wait_for_new('application', app_name)
-                                    for app_name in pending_apps])
+                await asyncio.gather(*[
+                    asyncio.ensure_future(
+                        self.model._wait_for_new('application', app_name))
+                    for app_name in pending_apps
+                ])
             return [app for name, app in self.applications.items()
                     if name in handler.applications]
         else: