bitbake: toaster: Read correct cooker log path from toasterui

The BB_CONSOLELOG variable changes by the time we read it in
BuildInfoHelper. This means that the log file location we
are using is incorrect, so the links to the cooker logs don't
work.

Instead, read it at the point when the BuildStarted event occurs
in toasterui. The BB_CONSOLELOG variable has the correct value
here, so pass that to BuildInfoHelper.

[YOCTO #8209]

(Bitbake rev: 20609eebee0d2318806cf81913e7ce6dc1005507)

Signed-off-by: Elliot Smith <elliot.smith@intel.com>
Signed-off-by: brian avery <avery.brian@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Elliot Smith 2015-09-11 13:57:28 -07:00 committed by Richard Purdie
parent 013c030c42
commit 8c63d6049d
2 changed files with 5 additions and 5 deletions

View File

@ -704,7 +704,7 @@ class BuildInfoHelper(object):
## methods to convert event/external info into objects that the ORM layer uses
def _get_build_information(self):
def _get_build_information(self, consolelogfile):
build_info = {}
# Generate an identifier for each new build
@ -713,7 +713,7 @@ class BuildInfoHelper(object):
build_info['distro_version'] = self.server.runCommand(["getVariable", "DISTRO_VERSION"])[0]
build_info['started_on'] = timezone.now()
build_info['completed_on'] = timezone.now()
build_info['cooker_log_path'] = self.server.runCommand(["getVariable", "BB_CONSOLELOG"])[0]
build_info['cooker_log_path'] = consolelogfile
build_info['build_name'] = self.server.runCommand(["getVariable", "BUILDNAME"])[0]
build_info['bitbake_version'] = self.server.runCommand(["getVariable", "BB_VERSION"])[0]
@ -847,9 +847,9 @@ class BuildInfoHelper(object):
logger.warn("buildinfohelper: cannot identify layer exception:%s ", nee)
def store_started_build(self, event):
def store_started_build(self, event, consolelogfile):
assert '_pkgs' in vars(event)
build_information = self._get_build_information()
build_information = self._get_build_information(consolelogfile)
build_obj = self.orm_wrapper.create_build_object(build_information, self.brbe, self.project)

View File

@ -126,7 +126,7 @@ def main(server, eventHandler, params ):
# the code will look into the protected variables of the event; no easy way around this
if isinstance(event, bb.event.BuildStarted):
buildinfohelper.store_started_build(event)
buildinfohelper.store_started_build(event, consolelogfile)
if isinstance(event, (bb.build.TaskStarted, bb.build.TaskSucceeded, bb.build.TaskFailedSilent)):
buildinfohelper.update_and_store_task(event)