[oe-commits] Mariano Lopez : sanity.bbclass: Check if /tmp is writable

git at git.openembedded.org git at git.openembedded.org
Thu Jul 16 14:10:09 UTC 2015


Module: openembedded-core.git
Branch: master
Commit: c101201b3aa7378e4c65a879040fe6f509e7cdcd
URL:    http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=c101201b3aa7378e4c65a879040fe6f509e7cdcd

Author: Mariano Lopez <mariano.lopez at linux.intel.com>
Date:   Tue Jul  7 11:17:40 2015 +0000

sanity.bbclass: Check if /tmp is writable

Used mkstemp instead of raw open file call.
Also added the exception message to the output of
the sanity check.

[YOCTO #7922]

Signed-off-by: Mariano Lopez <mariano.lopez at linux.intel.com>
Signed-off-by: Ross Burton <ross.burton at intel.com>

---

 meta/classes/sanity.bbclass | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass
index 7a580da..125cc4c 100644
--- a/meta/classes/sanity.bbclass
+++ b/meta/classes/sanity.bbclass
@@ -707,15 +707,16 @@ def check_sanity_everybuild(status, d):
     # Check if /tmp is writable
     from string import ascii_letters
     from random import choice
-    filename = "bb_writetest.%s" % os.getpid()
-    testfile = os.path.join("/tmp", filename)
+    from tempfile import mkstemp
+    tmpfd, tmppath = mkstemp()
     try:
-        f = open(testfile, "w")
+        f = os.fdopen(tmpfd, "wt")
         f.write("".join(choice(ascii_letters) for x in range(1024)))
         f.close()
-        os.remove(testfile)
-    except:
-        status.addresult("Failed to write into /tmp. Please verify your filesystem.")
+    except Exception as err:
+        status.addresult("Failed to write into /tmp; %s. Please verify your filesystem." % err)
+    finally:
+        os.remove(tmppath)
 
     # Check that the DISTRO is valid, if set
     # need to take into account DISTRO renaming DISTRO



More information about the Openembedded-commits mailing list