From: Alexandru DAMIAN Date: Wed, 10 Dec 2014 14:44:59 +0000 (+0000) Subject: toaster.bbclass: trigger event for other image files X-Git-Tag: 2015-4~1020 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=87a25b1dec86da809c9a13c10449bd33a471cb95;p=openembedded-core.git toaster.bbclass: trigger event for other image files Toaster will log all the files that it can find in the deploy images directory, and list them, considering that they may be artifacts of the current build not logged anywhere else. [YOCTO #6836] Signed-off-by: Alexandru DAMIAN Signed-off-by: Ross Burton --- diff --git a/meta/classes/toaster.bbclass b/meta/classes/toaster.bbclass index a7dd0aa854..55d0d28157 100644 --- a/meta/classes/toaster.bbclass +++ b/meta/classes/toaster.bbclass @@ -149,14 +149,26 @@ python toaster_image_dumpdata() { image_name = d.getVar('IMAGE_NAME', True); image_info_data = {} + artifact_info_data = {} + # collect all artifacts for dirpath, dirnames, filenames in os.walk(deploy_dir_image): for fn in filenames: - if fn.startswith(image_name): - image_output = os.path.join(dirpath, fn) - image_info_data[image_output] = os.stat(image_output).st_size + try: + if fn.startswith(image_name): + image_output = os.path.join(dirpath, fn) + image_info_data[image_output] = os.stat(image_output).st_size + else: + import stat + artifact_path = os.path.join(dirpath, fn) + filestat = os.stat(artifact_path) + if stat.S_ISREG(filestat.st_mode): + artifact_info_data[artifact_path] = filestat.st_size + except OSError as e: + bb.event.fire(bb.event.MetadataEvent("OSErrorException", e), d) bb.event.fire(bb.event.MetadataEvent("ImageFileSize",image_info_data), d) + bb.event.fire(bb.event.MetadataEvent("ArtifactFileSize",artifact_info_data), d) }