diff --git a/buildman/component/buildcomponent.py b/buildman/component/buildcomponent.py index d453949ef..14df0c6aa 100644 --- a/buildman/component/buildcomponent.py +++ b/buildman/component/buildcomponent.py @@ -157,7 +157,11 @@ class BuildComponent(BaseComponent): logger.debug('Invoking build: %s', self.builder_realm) logger.debug('With Arguments: %s', build_arguments) - self.call("io.quay.builder.build", **build_arguments).add_done_callback(self._build_complete) + def build_complete_callback(result): + """ This function is used to execute a coroutine as the callback. """ + trollius.ensure_future(self._build_complete(result)) + + self.call("io.quay.builder.build", **build_arguments).add_done_callback(build_complete_callback) # Set the heartbeat for the future. If the builder never receives the build call, # then this will cause a timeout after 30 seconds. We know the builder has registered