[oe-commits] [openembedded-core] 10/12: buildstats: check IMAGE_ROOTFS exists before checking its size

git at git.openembedded.org git at git.openembedded.org
Wed Oct 19 12:10:07 UTC 2016


rpurdie pushed a commit to branch master-next
in repository openembedded-core.

commit c0dc5b1bdeba406afee68a8d043b1f828c050230
Author: Mikko Ylinen <mikko.ylinen at intel.com>
AuthorDate: Wed Oct 19 09:34:00 2016 +0300

    buildstats: check IMAGE_ROOTFS exists before checking its size
    
    After 0d6b7276003f1afabc6de683f663540327d52bdc, the exceptions are
    correctly checked if the rootfs size check fails. In case of a
    failure a build error is triggered.
    
    However, there are cases where this is known to fail (e.g.,
    with meta-swupd the rootfs for swupd images is other than IMAGE_ROOTFS).
    
    Because of that, check IMAGE_ROOTFS exists before trying to get the
    size of it. Also, in case of any error catched as err, simply print
    out a warning.
    
    Signed-off-by: Mikko Ylinen <mikko.ylinen at intel.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 meta/classes/buildstats.bbclass | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/meta/classes/buildstats.bbclass b/meta/classes/buildstats.bbclass
index 8c2b7b3..599a219 100644
--- a/meta/classes/buildstats.bbclass
+++ b/meta/classes/buildstats.bbclass
@@ -163,12 +163,13 @@ python run_buildstats () {
             bs = os.path.join(bsdir, "build_stats")
             with open(bs, "a") as f:
                 rootfs = d.getVar('IMAGE_ROOTFS', True)
-                try:
-                    rootfs_size = subprocess.check_output(["du", "-sh", rootfs],
-                            stderr=subprocess.STDOUT).decode('utf-8')
-                except subprocess.CalledProcessError as e:
-                    bb.error("Failed to get rootfs size: %s" % e.output)
-                f.write("Uncompressed Rootfs size: %s" % rootfs_size)
+                if os.path.isdir(rootfs):
+                    try:
+                        rootfs_size = subprocess.check_output(["du", "-sh", rootfs],
+                                stderr=subprocess.STDOUT).decode('utf-8')
+                        f.write("Uncompressed Rootfs size: %s" % rootfs_size)
+                    except subprocess.CalledProcessError as err:
+                        bb.warn("Failed to get rootfs size: %s" % err.output.decode('utf-8'))
 
     elif isinstance(e, bb.build.TaskFailed):
         # Can have a failure before TaskStarted so need to mkdir here too

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list