Merge pull request #2143 from jakedt/makebuildmanasyncagain
Make buildman async again
This commit is contained in:
commit
498d7fc15e
8 changed files with 112 additions and 93 deletions
|
@ -13,6 +13,7 @@ from buildman.manager.ephemeral import (EphemeralBuilderManager, EtcdAction,
|
|||
ETCD_MAX_WATCH_TIMEOUT)
|
||||
from buildman.component.buildcomponent import BuildComponent
|
||||
from buildman.server import BuildJobResult
|
||||
from buildman.asyncutil import AsyncWrapper
|
||||
from util.metrics.metricqueue import duration_collector_async
|
||||
from app import metric_queue
|
||||
|
||||
|
@ -134,16 +135,16 @@ class TestEphemeralLifecycle(EphemeralBuilderTestCase):
|
|||
self.register_component_callback = Mock()
|
||||
self.unregister_component_callback = Mock()
|
||||
self.job_heartbeat_callback = Mock()
|
||||
self.job_complete_callback = Mock()
|
||||
self.job_complete_callback = AsyncWrapper(Mock())
|
||||
|
||||
self.manager = EphemeralBuilderManager(
|
||||
self.register_component_callback,
|
||||
self.unregister_component_callback,
|
||||
self.job_heartbeat_callback,
|
||||
self.job_complete_callback,
|
||||
'127.0.0.1',
|
||||
30,
|
||||
etcd_creator=self._create_mock_etcd_client,
|
||||
self.register_component_callback,
|
||||
self.unregister_component_callback,
|
||||
self.job_heartbeat_callback,
|
||||
self.job_complete_callback,
|
||||
'127.0.0.1',
|
||||
30,
|
||||
etcd_creator=self._create_mock_etcd_client,
|
||||
)
|
||||
|
||||
self.manager.initialize({'EXECUTOR': 'test'})
|
||||
|
@ -389,8 +390,9 @@ class TestEphemeralLifecycle(EphemeralBuilderTestCase):
|
|||
|
||||
# Ensure the job was marked as incomplete, with an update_phase to True (so the DB record and
|
||||
# logs are updated as well)
|
||||
self.job_complete_callback.assert_called_once_with(ANY, BuildJobResult.INCOMPLETE,
|
||||
'MockExecutor', update_phase=True)
|
||||
yield From(self.job_complete_callback.assert_called_once_with(ANY, BuildJobResult.INCOMPLETE,
|
||||
'MockExecutor',
|
||||
update_phase=True))
|
||||
|
||||
@async_test
|
||||
def test_change_worker(self):
|
||||
|
@ -473,16 +475,19 @@ class TestEphemeral(EphemeralBuilderTestCase):
|
|||
|
||||
unregister_component_callback = Mock()
|
||||
job_heartbeat_callback = Mock()
|
||||
job_complete_callback = Mock()
|
||||
|
||||
@coroutine
|
||||
def job_complete_callback(*args, **kwargs):
|
||||
raise Return()
|
||||
|
||||
self.manager = EphemeralBuilderManager(
|
||||
self._register_component,
|
||||
unregister_component_callback,
|
||||
job_heartbeat_callback,
|
||||
job_complete_callback,
|
||||
'127.0.0.1',
|
||||
30,
|
||||
etcd_creator=self._create_mock_etcd_client,
|
||||
self._register_component,
|
||||
unregister_component_callback,
|
||||
job_heartbeat_callback,
|
||||
job_complete_callback,
|
||||
'127.0.0.1',
|
||||
30,
|
||||
etcd_creator=self._create_mock_etcd_client,
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
|
|
Reference in a new issue