Bug 8639 - 2 oe-selftest TCs (test_layer_appends & test_devtool_update_recipe_git) fail if ran from a build dir that is not inside poky
Summary: 2 oe-selftest TCs (test_layer_appends & test_devtool_update_recipe_git) fail ...
Status: VERIFIED FIXED
Alias: None
Product: Build Testing
Classification: QA/Testing
Component: general (show other bugs)
Version: 2.0
Hardware: x86 Multiple
: Medium normal
Target Milestone: 2.1
Assignee: Paul Eggleton
QA Contact: Daniel Istrate
URL:
Whiteboard:
Depends on:
Blocks: 8525
  Show dependency tree
 
Reported: 2015-11-04 13:35 UTC by Daniel Istrate
Modified: 2015-11-18 09:06 UTC (History)
2 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: No (bug/feature does not impact docs)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniel Istrate 2015-11-04 13:35:16 UTC
As of: fc45deac89ef63ca1c44e763c38ced7dfd72cbe1

Oe-selftest TCs test_layer_appends & test_devtool_update_recipe_git fail if run from a build dir that is not inside poky.

[daniel@fedora-ws build-outside-poky]$ pwd
/media/ssd/build-outside-poky
[daniel@fedora-ws build-outside-poky]$ oe-selftest --run-tests devtool.DevtoolTests.test_devtool_update_recipe_git
2015-11-04 15:22:52,591 - selftest - INFO - Running bitbake -e to get BBPATH
2015-11-04 15:22:53,587 - selftest - INFO - Checking that everything is in order before running the tests
2015-11-04 15:22:54,613 - selftest - INFO - Running bitbake -p
2015-11-04 15:23:33,408 - selftest - INFO - Loading tests from: oeqa.selftest.devtool.DevtoolTests.test_devtool_update_recipe_git
2015-11-04 15:23:33,416 - selftest - INFO - Adding: "include selftest.inc" in local.conf
2015-11-04 15:23:33,416 - selftest - INFO - Adding: "include bblayers.inc" in bblayers.conf
2015-11-04 15:23:33 - test_devtool_update_recipe_git (oeqa.selftest.devtool.DevtoolTests) ... FAIL

======================================================================
FAIL: test_devtool_update_recipe_git (oeqa.selftest.devtool.DevtoolTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/daniel/poky/meta/lib/oeqa/utils/decorators.py", line 106, in wrapped_f
    return func(*args, **kwargs)
  File "/home/daniel/poky/meta/lib/oeqa/selftest/devtool.py", line 585, in test_devtool_update_recipe_git
    result = runCmd('git rev-parse --show-toplevel')
  File "/home/daniel/poky/meta/lib/oeqa/utils/commands.py", line 105, in runCmd
    raise AssertionError("Command '%s' returned non-zero exit status %d:\n%s" % (command, result.status, result.output))
AssertionError: Command 'git rev-parse --show-toplevel' returned non-zero exit status 128:
fatal: Not a git repository (or any parent up to mount point /media/ssd)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).

----------------------------------------------------------------------
Ran 1 test in 31.132s

FAILED (failures=1)
2015-11-04 15:24:04,549 - selftest - INFO - Finished
2015-11-04 15:24:04,549 - selftest - INFO - Removing the include from local.conf
2015-11-04 15:24:04,550 - selftest - INFO - Removing the include from bblayers.conf
[daniel@fedora-ws build-outside-poky]$ oe-selftest --run-tests layerappend.LayerAppendTests.test_layer_appends
2015-11-04 15:25:19,002 - selftest - INFO - Running bitbake -e to get BBPATH
2015-11-04 15:25:20,197 - selftest - INFO - Checking that everything is in order before running the tests
2015-11-04 15:25:21,239 - selftest - INFO - Running bitbake -p
2015-11-04 15:25:25,305 - selftest - INFO - Loading tests from: oeqa.selftest.layerappend.LayerAppendTests.test_layer_appends
2015-11-04 15:25:25,306 - selftest - INFO - Adding: "include selftest.inc" in local.conf
2015-11-04 15:25:25,306 - selftest - INFO - Adding: "include bblayers.inc" in bblayers.conf
2015-11-04 15:25:25 - test_layer_appends (oeqa.selftest.layerappend.LayerAppendTests) ... FAIL

======================================================================
FAIL: test_layer_appends (oeqa.selftest.layerappend.LayerAppendTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/daniel/poky/meta/lib/oeqa/utils/decorators.py", line 106, in wrapped_f
    return func(*args, **kwargs)
  File "/home/daniel/poky/meta/lib/oeqa/selftest/layerappend.py", line 83, in test_layer_appends
    bitbake("layerappendtest")
  File "/home/daniel/poky/meta/lib/oeqa/utils/commands.py", line 127, in bitbake
    return runCmd(cmd, ignore_status, timeout, **options)
  File "/home/daniel/poky/meta/lib/oeqa/utils/commands.py", line 105, in runCmd
    raise AssertionError("Command '%s' returned non-zero exit status %d:\n%s" % (command, result.status, result.output))
AssertionError: Command 'bitbake  layerappendtest' returned non-zero exit status 1:
ERROR: Traceback (most recent call last):
  File "/home/daniel/poky/bitbake/lib/bb/cookerdata.py", line 178, in wrapped
    return func(fn, *args)
  File "/home/daniel/poky/bitbake/lib/bb/cookerdata.py", line 200, in parse_config_file
    return bb.parse.handle(fn, data, include)
  File "/home/daniel/poky/bitbake/lib/bb/parse/__init__.py", line 113, in handle
    return h['handle'](fn, data, include)
  File "/home/daniel/poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py", line 124, in handle
    abs_fn = resolve_file(fn, data)
  File "/home/daniel/poky/bitbake/lib/bb/parse/__init__.py", line 136, in resolve_file
    raise IOError(errno.ENOENT, "file %s not found" % fn)
IOError: [Errno 2] file /media/ssd/build-outside-poky/../meta-layertest0/conf/layer.conf not found

ERROR: Unable to parse /media/ssd/build-outside-poky/../meta-layertest0/conf/layer.conf: [Errno 2] file /media/ssd/build-outside-poky/../meta-layertest0/conf/layer.conf not found

----------------------------------------------------------------------
Ran 1 test in 2.642s

FAILED (failures=1)
2015-11-04 15:25:27,948 - selftest - INFO - Finished
2015-11-04 15:25:27,948 - selftest - INFO - Removing the include from local.conf
2015-11-04 15:25:27,949 - selftest - INFO - Removing the include from bblayers.conf
[daniel@fedora-ws build-outside-poky]$ 


If the build dir is inside poky, these two TCs are passing.

[daniel@fedora-ws build-inside-poky]$ pwd
/home/daniel/poky/build-inside-poky
[daniel@fedora-ws build-inside-poky]$ oe-selftest --run-tests devtool.DevtoolTests.test_devtool_update_recipe_git
2015-11-04 15:21:07,963 - selftest - INFO - Running bitbake -e to get BBPATH
2015-11-04 15:21:09,040 - selftest - INFO - Checking that everything is in order before running the tests
2015-11-04 15:21:09,997 - selftest - INFO - Running bitbake -p
2015-11-04 15:21:54,717 - selftest - INFO - Loading tests from: oeqa.selftest.devtool.DevtoolTests.test_devtool_update_recipe_git
2015-11-04 15:21:54,723 - selftest - INFO - Adding: "include selftest.inc" in local.conf
2015-11-04 15:21:54,723 - selftest - INFO - Adding: "include bblayers.inc" in bblayers.conf
2015-11-04 15:21:54 - test_devtool_update_recipe_git (oeqa.selftest.devtool.DevtoolTests) ... ok

----------------------------------------------------------------------
Ran 1 test in 31.398s

OK
2015-11-04 15:22:26,121 - selftest - INFO - Finished
2015-11-04 15:22:26,121 - selftest - INFO - Removing the include from local.conf
2015-11-04 15:22:26,122 - selftest - INFO - Removing the include from bblayers.conf
[daniel@fedora-ws build-inside-poky]$ oe-selftest --run-tests layerappend.LayerAppendTests.test_layer_appends
2015-11-04 15:24:29,026 - selftest - INFO - Running bitbake -e to get BBPATH
2015-11-04 15:24:30,226 - selftest - INFO - Checking that everything is in order before running the tests
2015-11-04 15:24:31,352 - selftest - INFO - Running bitbake -p
2015-11-04 15:24:35,302 - selftest - INFO - Loading tests from: oeqa.selftest.layerappend.LayerAppendTests.test_layer_appends
2015-11-04 15:24:35,313 - selftest - INFO - Adding: "include selftest.inc" in local.conf
2015-11-04 15:24:35,313 - selftest - INFO - Adding: "include bblayers.inc" in bblayers.conf
2015-11-04 15:24:35 - test_layer_appends (oeqa.selftest.layerappend.LayerAppendTests) ... ok

----------------------------------------------------------------------
Ran 1 test in 34.061s

OK
2015-11-04 15:25:09,374 - selftest - INFO - Finished
2015-11-04 15:25:09,374 - selftest - INFO - Removing the include from local.conf
2015-11-04 15:25:09,375 - selftest - INFO - Removing the include from bblayers.conf
[daniel@fedora-ws build-inside-poky]$ 

Tested on Ubuntu 15.04 x86_64 and Fedora 21 x86_64.
Comment 1 Ross Burton 2015-11-04 13:38:13 UTC
CCing Paul as these are devtool tests.
Comment 2 Paul Eggleton 2015-11-04 15:11:45 UTC
I have a fix for both of these already, shall send out after the release.
Comment 4 Daniel Istrate 2015-11-18 09:06:58 UTC
Verified on master: d9aabf9639510fdb3e2ccc21ba5ae4aa9f6e4a57

The tests are now passing if run from a builddir outside poky.

[daniel@fedora-ws poky-build]$ oe-selftest --run-tests devtool.DevtoolTests.test_devtool_update_recipe_git
2015-11-18 11:04:15,221 - selftest - INFO - Running bitbake -e to get BBPATH
2015-11-18 11:04:16,850 - selftest - INFO - Checking that everything is in order before running the tests
2015-11-18 11:04:18,322 - selftest - INFO - Running bitbake -p
2015-11-18 11:04:38,730 - selftest - INFO - Loading tests from: oeqa.selftest.devtool.DevtoolTests.test_devtool_update_recipe_git
2015-11-18 11:04:38,742 - selftest - INFO - Adding: "include selftest.inc" in local.conf
2015-11-18 11:04:38,742 - selftest - INFO - Adding: "include bblayers.inc" in bblayers.conf
2015-11-18 11:04:38 - test_devtool_update_recipe_git (oeqa.selftest.devtool.DevtoolTests) ... ok

----------------------------------------------------------------------
Ran 1 test in 40.160s

OK
2015-11-18 11:05:18,902 - selftest - INFO - Finished
2015-11-18 11:05:18,903 - selftest - INFO - Removing the include from local.conf
2015-11-18 11:05:18,903 - selftest - INFO - Removing the include from bblayers.conf
[daniel@fedora-ws poky-build]$ oe-selftest --run-tests layerappend.LayerAppendTests.test_layer_appends
2015-11-18 11:05:41,558 - selftest - INFO - Running bitbake -e to get BBPATH
2015-11-18 11:05:43,200 - selftest - INFO - Checking that everything is in order before running the tests
2015-11-18 11:05:44,699 - selftest - INFO - Running bitbake -p
2015-11-18 11:05:50,256 - selftest - INFO - Loading tests from: oeqa.selftest.layerappend.LayerAppendTests.test_layer_appends
2015-11-18 11:05:50,258 - selftest - INFO - Adding: "include selftest.inc" in local.conf
2015-11-18 11:05:50,258 - selftest - INFO - Adding: "include bblayers.inc" in bblayers.conf
2015-11-18 11:05:50 - test_layer_appends (oeqa.selftest.layerappend.LayerAppendTests) ... ok

----------------------------------------------------------------------
Ran 1 test in 52.276s

OK
2015-11-18 11:06:42,535 - selftest - INFO - Finished
2015-11-18 11:06:42,535 - selftest - INFO - Removing the include from local.conf
2015-11-18 11:06:42,535 - selftest - INFO - Removing the include from bblayers.conf
[daniel@fedora-ws poky-build]$ pwd
/media/ssd/poky-build