diff options
author | Lars Wirzenius <liw@liw.fi> | 2017-11-18 22:03:00 +0100 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2017-11-18 22:03:00 +0100 |
commit | 1b4d3ab9cee0a47737aab8f4a603bb36e498ee0d (patch) | |
tree | f761ed57e32a27c526528e5cb37caf56ce21f22a /ick2/workapi.py | |
parent | a1467ca4dc025337a5c28ad15f9e534df697a444 (diff) | |
download | ick2-1b4d3ab9cee0a47737aab8f4a603bb36e498ee0d.tar.gz |
Refactor: simplify how a build is started
Diffstat (limited to 'ick2/workapi.py')
-rw-r--r-- | ick2/workapi.py | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/ick2/workapi.py b/ick2/workapi.py index 9d0a582..f6765f6 100644 --- a/ick2/workapi.py +++ b/ick2/workapi.py @@ -48,7 +48,11 @@ class WorkAPI(ick2.APIbase): pipeline['status'] = 'building' self._projects.update_project(project) - build_id = self._start_build(project, pipeline, worker) + build_id = project.get('build_id', 0) + 1 + project['build_id'] = build_id + self._projects.update_project(project) + + self._start_build(project, pipeline, worker, build_id) self._start_log(build_id) index = 0 @@ -78,6 +82,19 @@ class WorkAPI(ick2.APIbase): return project, pipeline return None, None + def _start_build(self, project, pipeline, worker, build_id): + ick2.log.log('info', msg_text='Starting new build', build_id=build_id) + build = { + 'build_id': build_id, + 'log': '/logs/{}'.format(build_id), + 'worker': worker, + 'project': project['project'], + 'pipeline': pipeline['name'], + 'status': 'building', + } + self._state.add_resource('builds', str(build_id), build) + return build_id + def update_work(self, update): if 'worker' not in update: # pragma: no cover raise ick2.BadUpdate('no worker specified') @@ -147,23 +164,6 @@ class WorkAPI(ick2.APIbase): return p, pl raise ick2.NotFound() - def _start_build(self, project, pipeline, worker): - ick2.log.log('info', msg_text='Starting new build') - build_id = project.get('build_id', 0) - build_id += 1 - project['build_id'] = build_id - self._projects.update_project(project) - build = { - 'build_id': build_id, - 'log': '/logs/{}'.format(build_id), - 'worker': worker, - 'project': project['project'], - 'pipeline': pipeline['name'], - 'status': 'building', - } - self._state.add_resource('builds', str(build_id), build) - return build_id - def _start_log(self, build_id): ick2.log.log('info', msg_text='Starting new log', build_id=build_id) log = { |