diff options
author | Mariano Lopez <mariano.lopez@linux.intel.com> | 2015-06-29 07:20:10 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2015-07-02 23:04:04 +0100 |
commit | 10c7cf0683494ea1bf2cc6de9b121abf2a04b253 (patch) | |
tree | ee6d527471c87ff17e4424702e537948ad038395 | |
parent | 1b696a45ddb00fbe1d993b19339071486d0cfef2 (diff) | |
download | openembedded-core-10c7cf0683494ea1bf2cc6de9b121abf2a04b253.tar.gz openembedded-core-10c7cf0683494ea1bf2cc6de9b121abf2a04b253.tar.bz2 openembedded-core-10c7cf0683494ea1bf2cc6de9b121abf2a04b253.zip |
sanity.bbclass: Check if /tmp is writable
If /tmp can't be written, bitbake gaves an unrelated error.
This checks if /tmp can be written in every build.
[YOCTO #7922]
Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
-rw-r--r-- | meta/classes/sanity.bbclass | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass index 2855941a7b..7a580da755 100644 --- a/meta/classes/sanity.bbclass +++ b/meta/classes/sanity.bbclass @@ -704,6 +704,19 @@ def check_sanity_everybuild(status, d): if "." in paths or "./" in paths or "" in paths: status.addresult("PATH contains '.', './' or '' (empty element), which will break the build, please remove this.\nParsed PATH is " + str(paths) + "\n") + # 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) + try: + f = open(testfile, "w") + 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.") + # Check that the DISTRO is valid, if set # need to take into account DISTRO renaming DISTRO distro = d.getVar('DISTRO', True) |