Bug fixes, refactoring and "new" tests for the build manager

- Fixes various bugs introduced in the most recent build system commit
- Refactors state management in the build manager to be cleaner and more contained
- Adds back in the mock-based tests, fixed to not use threads and adjusted for the refactoring
- Adds some more simplified unit tests around non-etch related flows
This commit is contained in:
Joseph Schorr 2016-07-15 18:28:48 -04:00
parent 9f6b47ad1f
commit 2c1880b944
4 changed files with 503 additions and 145 deletions

View file

@ -48,6 +48,11 @@ class BuilderExecutor(object):
default_websocket_scheme = 'wss' if app.config['PREFERRED_URL_SCHEME'] == 'https' else 'ws'
self.websocket_scheme = executor_config.get("WEBSOCKET_SCHEME", default_websocket_scheme)
@property
def name(self):
""" Name returns the unique name for this executor. """
return self.executor_config.get('NAME') or self.__class__.__name__
@coroutine
def start_builder(self, realm, token, build_uuid):
""" Create a builder with the specified config. Returns a unique id which can be used to manage