[oe-commits] [openembedded-core] 10/10: oeqa/core/runner: Append PID in the test result folder name

git at git.openembedded.org git at git.openembedded.org
Wed Apr 12 18:35:37 UTC 2017


This is an automated email from the git hooks/post-receive script.

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

commit 11eb36fbe8261a2c3d5f7b7b96cc644ed0893213
Author: Leonardo Sandoval <leonardo.sandoval.gonzalez at linux.intel.com>
AuthorDate: Wed Apr 12 09:12:07 2017 -0700

    oeqa/core/runner: Append PID in the test result folder name
    
    It was found a case (see the bugzilla entry) where two runners were running at the same
    second, creating identical test result folders, so one of them (the second runner)
    was not able to create the folder because the other has already created it,
    raising the following exception (many text was removed from log)
    
    NOTE: Executing RunQueue Tasks
    NOTE: Running task 1 of 2 (/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/meta/recipes-core/images/core-image-minimal.bb:do_testsdkext)
    NOTE: Running task 2 of 2 (/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/meta/recipes-sato/images/core-image-sato.bb:do_testsdkext)
    NOTE: recipe core-image-sato-1.0-r0: task do_testsdkext: Started
    NOTE: recipe core-image-minimal-1.0-r0: task do_testsdkext: Started
    .
    .
    The stack trace of python calls that resulted in this exception/failure was:
    File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
         0001:
     *** 0002:do_testsdkext(d)
         0003:
    File: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/meta/classes/testsdk.bbclass', lineno: 188, function: do_testsdkext
         0184:
         0185:testsdkext_main[vardepsexclude] =+ "BB_ORIGENV"
         0186:
         0187:python do_testsdkext() {
     *** 0188:    testsdkext_main(d)
         0189:}
         0190:addtask testsdkext
         0191:do_testsdkext[nostamp] = "1"
         0192:
    File: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/meta/classes/testsdk.bbclass', lineno: 171, function: testsdkext_main
         0167:        except Exception as e:
         0168:            import traceback
         0169:            bb.fatal("Loading tests failed:\n%s" % traceback.format_exc())
         0170:
     *** 0171:        result = tc.runTests()
    .
    .
    File: '/usr/lib64/python3.5/os.py', lineno: 241, function: makedirs
         0237:            cdir = bytes(curdir, 'ASCII')
         0238:        if tail == cdir:           # xxx/newdir/. exists if xxx/newdir exists
         0239:            return
         0240:    try:
     *** 0241:        mkdir(name, mode)
         0242:    except OSError:
         0243:        # Cannot rely on checking for EEXIST, since the operating system
         0244:        # could give priority to other errors like EACCES or EROFS
         0245:        if not exist_ok or not path.isdir(name):
    Exception: FileExistsError: [Errno 17] File exists: '/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-mips/build/build/TestResults_20170409130114'
    
    [YOCTO #11318]
    
    Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez at linux.intel.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 meta/lib/oeqa/core/runner.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/lib/oeqa/core/runner.py b/meta/lib/oeqa/core/runner.py
index 0f158c3..44ffecb 100644
--- a/meta/lib/oeqa/core/runner.py
+++ b/meta/lib/oeqa/core/runner.py
@@ -52,7 +52,7 @@ class OETestRunner(_TestRunner):
         if xmlEnabled:
             if not kwargs.get('output'):
                 kwargs['output'] = os.path.join(os.getcwd(),
-                        'TestResults_%s' % time.strftime("%Y%m%d%H%M%S"))
+                        'TestResults_%s_%s' % (time.strftime("%Y%m%d%H%M%S"), os.getpid()))
 
         super(OETestRunner, self).__init__(*args, **kwargs)
         self.tc = tc

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


More information about the Openembedded-commits mailing list