From 047c2aca245805746cee3af9f2588373b1602500 Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Tue, 23 Jul 2019 19:58:07 +0300 Subject: Change: track build status --- api.py | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/api.py b/api.py index ddbefe2..81f644e 100755 --- a/api.py +++ b/api.py @@ -404,7 +404,7 @@ class Controller(API): def __init__(self, token): super().__init__() self._token = token - self._builds = [] + self._builds = {} def get_routes(self): return [ @@ -430,7 +430,7 @@ class Controller(API): def _status(self): return { - 'builds': list(self._builds), + 'builds': {name: self._builds[name] for name in sorted(self._builds)}, } def _trigger(self): @@ -441,8 +441,13 @@ class Controller(API): logging.debug('Request: %r', bottle.request.body.read()) raise bottle.HTTPError(400) - logging.info('Triggering build of %r', spec) - self._builds.append(spec) + name = spec.get('gitlab') + if name is None: + logging.error('Request spec has no gitlab') + raise bottle.HTTPError(400) + + logging.info('Triggering build of %s', name) + self._builds[name] = None url = '{}/updaterepo'.format(self.VCSWORKER) argv = [ @@ -466,6 +471,7 @@ class Controller(API): if kind == 'build' and r is not None: name = r.get('name') logging.info('Repository %s build status %s', name, status) + self._builds[name] = status -- cgit v1.2.1