diff options
author | Alexandru DAMIAN <alexandru.damian@intel.com> | 2014-02-17 17:33:27 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-03-25 11:17:34 +0000 |
commit | 1913a1751d50c6e6011faea57999a4d342963de9 (patch) | |
tree | 4c8d4435d780bdb786b8493e2652fea226fbb03b /bitbake/lib/bb | |
parent | 1d20fc44ea74696a85bd86e42a1f1a11f474fb55 (diff) | |
download | poky-1913a1751d50c6e6011faea57999a4d342963de9.tar.gz |
bitbake: toasterui: save missed sstate tasks
We save the missed sstate tasks as tasks that executed
but have the sstate_result set to "SSTATE_MISSED", signaling
that the attempt to find an sstate file failed.
(Bitbake rev: 6f22e02614adcc642fe011e5e31ca4936d1cb19d)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/bb')
-rw-r--r-- | bitbake/lib/bb/ui/buildinfohelper.py | 21 | ||||
-rw-r--r-- | bitbake/lib/bb/ui/toasterui.py | 2 |
2 files changed, 23 insertions, 0 deletions
diff --git a/bitbake/lib/bb/ui/buildinfohelper.py b/bitbake/lib/bb/ui/buildinfohelper.py index 71b2ff508a..d1d92c8a5e 100644 --- a/bitbake/lib/bb/ui/buildinfohelper.py +++ b/bitbake/lib/bb/ui/buildinfohelper.py | |||
@@ -749,6 +749,27 @@ class BuildInfoHelper(object): | |||
749 | self.orm_wrapper.get_update_task_object(task_information, True) # must exist | 749 | self.orm_wrapper.get_update_task_object(task_information, True) # must exist |
750 | 750 | ||
751 | 751 | ||
752 | def store_missed_state_tasks(self, event): | ||
753 | for (fn, taskname, taskhash, sstatefile) in event.data: | ||
754 | |||
755 | identifier = fn + taskname + "_setscene" | ||
756 | recipe_information = self._get_recipe_information_from_taskfile(fn) | ||
757 | recipe = self.orm_wrapper.get_update_recipe_object(recipe_information) | ||
758 | class MockEvent: pass | ||
759 | event = MockEvent() | ||
760 | event.taskname = taskname | ||
761 | event.taskhash = taskhash | ||
762 | task_information = self._get_task_information(event,recipe) | ||
763 | |||
764 | task_information['start_time'] = datetime.datetime.now() | ||
765 | task_information['outcome'] = Task.OUTCOME_NA | ||
766 | task_information['sstate_checksum'] = taskhash | ||
767 | task_information['sstate_result'] = Task.SSTATE_MISS | ||
768 | task_information['path_to_sstate_obj'] = sstatefile | ||
769 | |||
770 | self.orm_wrapper.get_update_task_object(task_information) | ||
771 | |||
772 | |||
752 | def store_target_package_data(self, event): | 773 | def store_target_package_data(self, event): |
753 | assert 'data' in vars(event) | 774 | assert 'data' in vars(event) |
754 | # for all image targets | 775 | # for all image targets |
diff --git a/bitbake/lib/bb/ui/toasterui.py b/bitbake/lib/bb/ui/toasterui.py index b2c084cb8e..453eaf9485 100644 --- a/bitbake/lib/bb/ui/toasterui.py +++ b/bitbake/lib/bb/ui/toasterui.py | |||
@@ -241,6 +241,8 @@ def main(server, eventHandler, params ): | |||
241 | buildinfohelper.store_tasks_stats(event) | 241 | buildinfohelper.store_tasks_stats(event) |
242 | elif event.type == "ImagePkgList": | 242 | elif event.type == "ImagePkgList": |
243 | buildinfohelper.store_target_package_data(event) | 243 | buildinfohelper.store_target_package_data(event) |
244 | elif event.type == "MissedSstate": | ||
245 | buildinfohelper.store_missed_state_tasks(event) | ||
244 | elif event.type == "ImageFileSize": | 246 | elif event.type == "ImageFileSize": |
245 | buildinfohelper.update_target_image_file(event) | 247 | buildinfohelper.update_target_image_file(event) |
246 | elif event.type == "LicenseManifestPath": | 248 | elif event.type == "LicenseManifestPath": |