[gnome-continuous-yocto/gnomeostree-3.28-rocko: 3906/8267] oe-selftest: Improve BUILDDIR environment handling
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous-yocto/gnomeostree-3.28-rocko: 3906/8267] oe-selftest: Improve BUILDDIR environment handling
- Date: Sun, 17 Dec 2017 01:17:25 +0000 (UTC)
commit f2b847a29092533a66bdd3a7e13e1b1356055265
Author: Richard Purdie <richard purdie linuxfoundation org>
Date: Wed Jan 4 23:34:30 2017 +0000
oe-selftest: Improve BUILDDIR environment handling
Its possible something (like bitbake/tinfoil2) may mess around with the
environment and using the enviroment as a global variable store isn't
particularly nice anyway.
This patch changes the BUILDDIR usages so that the environment isn't used
as a global store and a global variable is used instead. Whilst that
is still not perfect, it does avoid the current double and triple backtraces
we're seeing where tinfoil2/bitbake has trampled the enviroment leading
to failures of failures making debugging even harder.
(From OE-Core rev: 689b676bbf2f1a5fadb04aeb41d5e68e35356545)
Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
scripts/oe-selftest | 19 +++++++++++++------
1 files changed, 13 insertions(+), 6 deletions(-)
---
diff --git a/scripts/oe-selftest b/scripts/oe-selftest
index bfcea66..e166521 100755
--- a/scripts/oe-selftest
+++ b/scripts/oe-selftest
@@ -111,9 +111,13 @@ def get_args_parser():
help='Submit test results to a repository')
return parser
+builddir = None
+
def preflight_check():
+ global builddir
+
log.info("Checking that everything is in order before running the tests")
if not os.environ.get("BUILDDIR"):
@@ -135,7 +139,7 @@ def preflight_check():
return True
def add_include():
- builddir = os.environ.get("BUILDDIR")
+ global builddir
if "#include added by oe-selftest.py" \
not in ftools.read_file(os.path.join(builddir, "conf/local.conf")):
log.info("Adding: \"include selftest.inc\" in local.conf")
@@ -149,7 +153,7 @@ def add_include():
"\n#include added by oe-selftest.py\ninclude bblayers.inc")
def remove_include():
- builddir = os.environ.get("BUILDDIR")
+ global builddir
if builddir is None:
return
if "#include added by oe-selftest.py" \
@@ -165,18 +169,21 @@ def remove_include():
"\n#include added by oe-selftest.py\ninclude bblayers.inc")
def remove_inc_files():
+ global builddir
+ if builddir is None:
+ return
try:
- os.remove(os.path.join(os.environ.get("BUILDDIR"), "conf/selftest.inc"))
+ os.remove(os.path.join(builddir, "conf/selftest.inc"))
for root, _, files in os.walk(get_test_layer()):
for f in files:
if f == 'test_recipe.inc':
os.remove(os.path.join(root, f))
- except (AttributeError, OSError,) as e: # AttributeError may happen if BUILDDIR is not set
+ except OSError as e:
pass
for incl_file in ['conf/bblayers.inc', 'conf/machine.inc']:
try:
- os.remove(os.path.join(os.environ.get("BUILDDIR"), incl_file))
+ os.remove(os.path.join(builddir, incl_file))
except:
pass
@@ -394,7 +401,7 @@ def coverage_setup(coverage_source, coverage_include, coverage_omit):
""" Set up the coverage measurement for the testcases to be run """
import datetime
import subprocess
- builddir = os.environ.get("BUILDDIR")
+ global builddir
pokydir = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
curcommit= subprocess.check_output(["git", "--git-dir", os.path.join(pokydir, ".git"), "rev-parse",
"HEAD"]).decode('utf-8')
coveragerc = "%s/.coveragerc" % builddir
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]