Refresh the build_job from the database before we write updates.
This commit is contained in:
parent
34bf92673b
commit
aac7feb20b
2 changed files with 9 additions and 6 deletions
|
@ -67,7 +67,7 @@ class BuildComponent(BaseComponent):
|
||||||
def start_build(self, build_job):
|
def start_build(self, build_job):
|
||||||
""" Starts a build. """
|
""" Starts a build. """
|
||||||
self._current_job = build_job
|
self._current_job = build_job
|
||||||
self._build_status = StatusHandler(self.build_logs, build_job.repo_build)
|
self._build_status = StatusHandler(self.build_logs, build_job.repo_build.uuid)
|
||||||
self._image_info = {}
|
self._image_info = {}
|
||||||
|
|
||||||
self._set_status(ComponentStatus.BUILDING)
|
self._set_status(ComponentStatus.BUILDING)
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
from data.database import BUILD_PHASE
|
from data.database import BUILD_PHASE
|
||||||
|
from data import model
|
||||||
|
|
||||||
class StatusHandler(object):
|
class StatusHandler(object):
|
||||||
""" Context wrapper for writing status to build logs. """
|
""" Context wrapper for writing status to build logs. """
|
||||||
|
|
||||||
def __init__(self, build_logs, repository_build):
|
def __init__(self, build_logs, repository_build_uuid):
|
||||||
self._current_phase = None
|
self._current_phase = None
|
||||||
self._repository_build = repository_build
|
self._uuid = repository_build_uuid
|
||||||
self._uuid = repository_build.uuid
|
|
||||||
self._build_logs = build_logs
|
self._build_logs = build_logs
|
||||||
|
|
||||||
self._status = {
|
self._status = {
|
||||||
|
@ -41,8 +41,11 @@ class StatusHandler(object):
|
||||||
|
|
||||||
self._current_phase = phase
|
self._current_phase = phase
|
||||||
self._append_log_message(phase, self._build_logs.PHASE, extra_data)
|
self._append_log_message(phase, self._build_logs.PHASE, extra_data)
|
||||||
self._repository_build.phase = phase
|
|
||||||
self._repository_build.save()
|
# Update the repository build with the new phase
|
||||||
|
repo_build = model.get_repository_build(self._uuid)
|
||||||
|
repo_build.phase = phase
|
||||||
|
repo_build.save()
|
||||||
return True
|
return True
|
||||||
|
|
||||||
def __enter__(self):
|
def __enter__(self):
|
||||||
|
|
Reference in a new issue