Commit Graph

4068 Commits

Author SHA1 Message Date
Markus Lehtonen
afb01421e2 oe-selftest: devtool: add setup() method
In order to remove some code duplication.  The method currently only
does checking of workspace dir.

(From OE-Core rev: 5d7cd3dc9e497bb3c2aba4cf2af3e3ee84dd7a2f)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01 07:43:31 +01:00
Markus Lehtonen
31c3078a63 oe.patch.GitApplyTree: add paths argument to extractPatches
Makes it possible to define which paths are included in the patches.

(From OE-Core rev: 640e57b423e5a8f0e4572eac985f87139780f247)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01 07:43:31 +01:00
Markus Lehtonen
d5e2dd47db recipeutils: implement get_recipe_local_files()
(From OE-Core rev: c94cf6e6e8a0645c822a708a432901dcb5ce5bf4)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-10-01 07:43:31 +01:00
Richard Purdie
3af9f06f1b oeqa/sdk/gcc: Fix makefile test
The makefile test was hardcoding a test for gcc. In the SDK context, we
need to use $(CC) to use the cross compiler.

(From OE-Core rev: d28ddc23bbf232901ae07f7a01f821ecc4b79e32)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:31 +01:00
Alex Franco
2bbec5645e Empty image:rootfs.py:handle empty PACKAGE_INSTALL
rootfs.py: added a test in DpkgOpkgRootfs which skips the
get package post installs step (get_pkgs_postinsts), when
PACKAGE_INSTALL is empty.

[YOCTO #7664]

(From OE-Core rev: 2d5fb43ec647e8445fc8e8a5caba771c0361a539)

Signed-off-by: Alex Franco <alejandro.franco@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:28 +01:00
Alexander Kanavin
5cc44fe4fd recipeutils.py: don't hardcode the upstream version as 1.0 when SRC_URI is empty or absent
Instead, simply return the version of the recipe, so that the upstream
version checker will declare that they match.

(From OE-Core rev: 10c948a67546dd4ed2ac00b5210ef4b3eeca9401)

Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:24 +01:00
Lucian Musat
320500e38e oeqa/parselogs: Updated log parser whitelist.
Added some fixes for meta-intel boards and moved some
errors from specific images to common.

(From OE-Core rev: ccbb12f9ec7c0a5714a8b1a24efb46755408c256)

Signed-off-by: Lucian Musat <george.l.musat@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:24 +01:00
Lucian Musat
3fb464f6af oeqa/decorators: Add timestamp to decorator logs.
To avoid logs being overwriten when running the automated
tests multiple times, log files include timestamps in
their names and a link is created to point to the latest one.

(From OE-Core rev: 0aa6af4aec6f9773ec2aea929deb3a1ed049cbb9)

Signed-off-by: Lucian Musat <george.l.musat@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:22 +01:00
Richard Purdie
3408d0dc87 qemurunner: Handle qemu start failure correctly
If qemu didn't start correctly, we may not have registered the child
signal. This results in a nasty traceback which confuses the underlying
issue. Cleanup this code and make the handler cleanup conditional.

(From OE-Core rev: 0ead936925c61aaaa7a819f6c5b999ba3a4daeda)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:18 +01:00
Richard Purdie
09af262045 oeqa/oetest: Fix SDK command execution
The SDK environment wasn't being sourced when running these test
commands, meaning in some cases the cross compiler was being tested,
not the SDK tools. This is clearly not the intent so fix this by
ensuring the SDK environment is present. This fixes test failures
in multilib SDKs.

(From OE-Core rev: 39c56f7c280cfe6bf40ea9145f3f7060b565bc62)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:18 +01:00
Robert Yang
eb7b1a58ce package_manager.py: make rpm install mutilib pkgs corectly
When configure multilib, "bitbake <image_bb> -c populate_sdk" should
install all arch toolchains (for example, 32 and 64bit), but rpm not
handle the multilib requires correctly, for example:
lib32-packagegroup-core-standalone-sdk-target requires lib32-libc6, rpm
may pull in libc6 rather than lib32-libc6, there are the similar issue
when:

IMAGE_INSTALL_append += "lib32-packagegroup-foo foo"

Use bitbake to expand the RDEPENDS will fix the problem since bitbake
knows mlprefix and handle it well, but rpm doesn't.

This patch only affects when:
IMAGE_INSTALL = "lib32-foo foo"
Doesn't affect:
IMAGE_INSTALL = "lib32-foo1 lib32-foo2"
Or:
IMAGE_INSTALL = "foo1 foo2"

[YOCTO #8089]

(From OE-Core rev: fc469e51475b5272b4047d4713eb99529193ac8a)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-28 12:00:15 +01:00
Daniel Istrate
9673278ddd oeqa/selftest/archiver: Test that archiver filters on recipe name
[YOCTO #6929] this test validates the feature introduced in bug 6929

(From OE-Core rev: 2642fb1e00878baa8eaec80015ff3678cb3088f8)

Signed-off-by: Daniel Istrate <daniel.alexandrux.istrate@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-24 17:54:28 +01:00
Mariano Lopez
68073270f8 oeqa/utils/dump: Add default commands and directory
Currently if qemu fails when running a selftest and
tries to run some commands on the host it will fail
because some variables required by the Dumper class
do not exist because testimage was not included.

This change adds a default parent directory to save
the dumps for the host or target. Also adds default
commands to run if no commands were provided to the
class. With these changes the previous errors using
selftest don't show anymore.

[YOCTO #8306]

(From OE-Core rev: 713beaf84f8b8ab415b7a8ccba8a4a2aff7f98e5)

Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-24 17:54:28 +01:00
Lucian Musat
8733b53826 oeqa/runexported: Removed DEPLOY_DIR as mandatory.
We don't need DEPLOY_DIR for every runtime test so there is no
need for it to be mandatory.

(From OE-Core rev: 9f89e8e0bf2ba65f2cff5adb3050d6a701dc486a)

Signed-off-by: Lucian Musat <george.l.musat@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-24 17:54:27 +01:00
Lucian Musat
f1e7fb0856 oeqa/oetest: Remove bb as requirement for oetest.
In order for the test export runner to work oetest needs to be
separated from bitbake environment. There is no need to use bb
import here so we can use a logger instead.

(From OE-Core rev: 22bd8a600823306d7c5965a9a69b8e8888993513)

Signed-off-by: Lucian Musat <george.l.musat@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-24 17:54:27 +01:00
Aníbal Limón
61e77c7166 oeqa/runtime/parselogs.py: Fix dmesg log retrieve in sato
Sato uses busybox that fails to write log using echo "" because
dmesg output can contain special characters.

[YOCTO #8377]

(From OE-Core rev: 89107d0e01235b8cff70c0325723d2a99d2c336c)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-24 17:54:26 +01:00
Aníbal Limón
524ddd86c3 oeqa/utils/qemurunner.py: Remove duplicate message on LoggingThread start
The Starting logging thread message is also executed on run() inside
LoggingThread class.

(From OE-Core rev: 2ad7308ee7166641eff99f3b9fe6794de143f6bc)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:21 +01:00
Aníbal Limón
376ce717bd oeqa/utils/qemurunner.py: Fix HIGH CPU usage on LoggingThread
LoggingThread is used for receive console output from QEMU
over TCP, so add filter to only wake poll on read events,
also change the event mask variable name to be more descriptive.

This fixes HIGH CPU consume caused by wake on ready to write
events.

(From OE-Core rev: 7b6c9b6327638c9731cea80a52d30d4a8fb6e081)

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:21 +01:00
Paul Eggleton
76084cdfa6 devtool: build-image: delete bbappend at end of build
Upon further reflection, it seems to me that this bbappend ought to just
be deleted at the end of the build. This keeps things simple; you never
have to remember to delete any files to get back to where you were
before with the image. This means we can also drop the slightly awkward
message reminding the user how to do that. I've also updated the test to
look at the image manifest to determine if the command has worked
instead of looking for the (now deleted) bbappend.

(From OE-Core rev: f6b90bceaedf9bad3d111e6ca1fa79e59f472c73)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:19 +01:00
Paul Eggleton
99fc284545 devtool / lib/oe/recipeutils: ensure we can parse without bbappends
These functions ostensibly allowed parsing a recipe without bbappends
but this clearly hadn't been tested because a variable was unassigned in
both of them in that case.

(From OE-Core rev: d2bb9f08303bb120e811c03af2f5339e8f262cfa)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:15 +01:00
Paul Eggleton
e0b9a96002 lib/oe/patch: fix for git am not cleaning up after itself
Unfortunately it appears that under certain circumstances, a failed
git am followed by git am --abort won't clean up any changes the patch
might have made - this was seen when running "devtool extract" on the
unzip recipe; unzip-6.0_overflow3.diff has a malformed date as far as
git am is concerned but it triggers this condition. Add a
git reset --hard HEAD followed by git clean -f in order to recover from
this scenario.

(From OE-Core rev: 21fdbd76f458b70a6646dd6d0749e3a465ebd320)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:13 +01:00
Paul Eggleton
374e1fed0e lib/oe/recipeutils: properly split unexpanded variable values
Variables such as SRC_URI which are space-separated may also contain
Python expressions (${@...}) which themselves contain spaces that
shouldn't be split when splitting the value into items. In order to
ensure this we need to use a custom splitting function instead of just
string.split().

This issue could be seen when doing "devtool modify sudo", adding a
commit to the resulting source repository then "devtool update-recipe" -
the Python expression in SRC_URI was being unnecessarily broken onto
multiple lines.

Fixes [YOCTO #8046].

(From OE-Core rev: bbec2ee98a08270c681189a6ba26beb1034d3e2f)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:11 +01:00
Daniel Istrate
266e417bb8 oeqa/selftest: buildoptions.py Removed unused imports
Removed unused imports: unittest, logging, pexpect

(From OE-Core rev: f5752cefe6ee374bffadcecb2ec50bfd38376b7d)

Signed-off-by: Daniel Istrate <daniel.alexandrux.istrate@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:53:10 +01:00
Lucian Musat
bbe06b443b oeqa/testimage: Enhance -v switch in testimage
When testimage is run with -v switch now individual
test progress can be seen directly in bitbake console.

[YOCTO #6841]

(From OE-Core rev: 27138b2eeafa8b81f3020ad9d8a55263e636288c)

Signed-off-by: Lucian Musat <george.l.musat@intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-23 09:52:55 +01:00
Richard Purdie
4727384a74 oeqa/sstatetests: Add test for nativesdk stamp invariance with MACHINE
nativesdk-glbic should not rebuild when you change MACHINE but
it was. We've fixed that, now add tests to ensure this doesn't
happen again.

Rather than add yet another stamps test, extend one of the
existing ones to cover this instead.

(From OE-Core rev: e55b3d88e7a9138f518301a7217f74ba98e979aa)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 09:05:30 +01:00
Patrick Williams
18845508a2 image.py: Ensure base image size is an integer
There is a floating point multiplication done of a base image size
and an "overhead factor", which is currently rounded up to the next
integer.  If the multiplication results in a whole number, the value
will still be a float.  When this float is used to generate a shell
script, a buggy script is generated.

Fix this by always forcing to an integer.

(From OE-Core rev: bf74a002b8fa18d94cec93f0341cbe74cc010ca7)

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 09:05:29 +01:00
Lucian Musat
d8eb9d41b0 oeqa/decorators: Added decorator to restart the DUT in case of test hang.
Once the DUT is hanged during testing, currently all the following test
cases have to wait for default timeout to exit. Using this decorator the
user can choose a timeout at case by case basis and what happens when the
timeout is reached by overwriting the self.target.restart method.

[YOCTO #7853]

(From OE-Core rev: ce9a7501ea29ddba61ef7c297223b3f7eca5a2a1)

Signed-off-by: Lucian Musat <george.l.musat@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-18 09:05:21 +01:00
Mike Looijmans
722aa22d15 image.py: Allow IMAGE_LINK_NAME to be empty
When IMAGE_LINK_NAME is empty, OE will try to create a "blank" link instead
of just skipping it. The code checks for "link_name is not None" which will
never evaluate to true. Change the test to a simple "if link_name:" so it
no longer attempt to create links when the variable is an empty string.

(From OE-Core rev: 7f03dd50de76f0b5c3a10c514e920615ffaa846c)

Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-14 20:46:35 +01:00
Richard Purdie
ba17ce3f20 oeqa/targetbuild: Ensure we run gnu-configize so config files are up to date
On aarch64 we need to do this as the versions in the upstream source don't
recognise the target triplet causing SDK test failures.

(From OE-Core rev: 2374bfa3b98f787f4559f14a60647e4c2b051274)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:47 +01:00
Paul Eggleton
3a9e230b7a classes/sstate: break out function to get sstate manifest filename
It is useful in a few different contexts to see which files have been
written out by an sstate task; break out a function that lets us get the
path to the manifest file easily.

(From OE-Core rev: 090196dd2d8f4306b34b239e78c39d37cc86034c)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:45 +01:00
Richard Purdie
a14c363409 oeqa: Test failure/cleanup improvements
Currently, if qemu segfaults, the tests merrily continue trying to execute
which takes time for them to timeout and is a bit silly. Worse, no logs about
the segfault are shown to the user, its silent!

This patch tries to unravel the tangled web of issues and ensures that we:

* install a SIGCHLD handler which tells the user qemu exited
* check if qemu is running, if it isn't fail the test outright
* don't leave processes behind in sshcontrol which would hold
  bitbake.lock and block shutdown

(From OE-Core rev: 77e9363feba53b72429154be5713c46b007ae0a4)

(From OE-Core rev: c77b57e2fa8a4cf90543038fe1939f6ca9b12bd1)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:33 +01:00
Ross Burton
44ae903e30 oeqa/runtime/date: stop systemd-timesyncd during test
There's a race between systemd-timesyncd manipulating the system time (with NTP
lookups) and the test case's time manipulation.  Prevent this by stopping
systemd-timesyncd for the duration of the test case.

Thanks to Khem Raj for root-causing this.

(From OE-Core rev: 5334f1b1e9363fa9c128289b51ade55c7ae1a0a3)

Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-12 22:48:24 +01:00
Khem Raj
21fffdeea3 rootfs: Conditionally uninstall update-rc.d
update-rc.d is now needed by systemd to interact with sysv
scripts, so if we have a mixed system, then we can not uninstall
update-rc.d as it is going to break systemd functionality, we check for
sysvinit and sytemd in distro and also ensure that its not building an
image with readonly rootfs

(From OE-Core rev: 5dd5b8adc225d5c703d85fc0187ae65ff6067b58)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-11 23:28:36 +01:00
Richard Purdie
4cccac9af0 Revert "rootfs: Do not uninstall update-rc.d"
This reverts commit acf90b6c299afe9e9c8fa33c3c6992bfcf40fbbf.

(Reverted to apply the better v2 of the patch)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-11 23:28:35 +01:00
Richard Purdie
9bfaf596fb oeqa/sstatettests: Improve output of assert
Currently if this fails you see:

"AssertionError: 1 != 0"

which is useless. Add the output of the failed command so we can stand
some chance of debugging what went wrong.

(From OE-Core rev: e482f9bfddc6b710c9b566c3d3433dc2d7d5a22e)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:54 +01:00
Markus Lehtonen
3dd9fc39ab devtool: update-recipe: better 'auto' mode
Enhance the logic behind the 'auto' mode a bit by only updating the
SRCREV if the changes are already found upstream. The logic is simple:
update SRCREV only if the current local HEAD commit is found in the
remote branch (i.e. 'origin/<branch_name>'). Otherwise resort to
patching.

This affects a couple of the oe-selftest tests so update those as well.

[YOCTO #7907]

(From OE-Core rev: 9b9733b7d74032aef4979bec553019421e77da14)

Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:52 +01:00
Leonardo Sandoval
8be95c5fbe devtool: add upgrade feature
Upgrades a recipe to a particular version and downloads the source code
into a folder. User can avoid patching the source code.

These are the general steps of the upgrade function:

   - Extract current recipe source code into srctree and create a branch
   - Extract upgrade recipe source code into srctree and rebase with
     previous branch. In case the rebase is not correctly applied, source
     code will not be deleted, so user correct the patches
   - Creates the new recipe under the workspace

[YOCTO #7642]

(From OE-Core rev: 4020f5d91b3e4d011150d5081d36215f8eab732e)

Signed-off-by: Leonardo Sandoval <leonardo.sandoval.gonzalez@linux.intel.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:51 +01:00
Cristina Agurida
dd075b9e79 oeqa/parselogs: Updated log error whitelist.
[YOCTO #7898]
[YOCTO #7761]
[YOCTO #7804]

(From OE-Core rev: fb3a5c732997eddee6dacb52558d4e6c8942f1e1)

Signed-off-by: Cristina Agurida <cristina-danielax.agurida@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:48 +01:00
Richard Purdie
e87c182b6c qemurunner: Fix killpg pid usage
killpg should be being called with a pgid, not a pid.

(From OE-Core rev: d23bf86f305a04a47d19236d72979c1027a31620)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:47 +01:00
Richard Purdie
335260cbfc qemurunner: Ensure runqemu doesn't survive SIGKILL
Currently, we see runqemu and qemu-system-* processes left behind when
bitbake is killed by buildbot. This is due to the use of setpgrp() in
the runqemu subprocess call.

We need the setpgrp call so that all runqemu processes can easily be
killed (by killing their process group). This presents a problem if this
controlling process itself is killed however since those processes don't
notice the death of the parent and merrily continue on.

Rather than hack runqemu to deal with this, we add something to
qemurunner, at least for now to resolve the issue. Basically we fork off
another process which holds an open pipe to the parent and also is
setpgrp. If/when the pipe sees EOF from the parent dieing, it kills the
process group. This is like pctrl's PDEATHSIG but for a process group
rather than a single process.

(From OE-Core rev: 99428eafb5352bd39bc4329bdba07c6d6f17b03f)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:46 +01:00
Martin Jansa
79bf3f7155 rootfs.py: show intercept script output in log.do_rootfs
* without this the output wasn't shown anywhere even when the bb.warn
  says:
  "See log for details!"

(From OE-Core rev: a3c322b42c7a14584a80e04519c34689ec813210)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:46 +01:00
Robert Yang
525979f3f6 package_manager.py: search provides when not found by pkgname
Fixed when:
PACKAGE_CLASSES = "package_rpm"
IMAGE_INSTALL_append = " perl-module-warnings-register"

$ bitbake core-image-minimal
[snip]
ERROR: perl-module-warnings-register not found in the base feeds
[snip]

And it works well when PACKAGE_CLASSES = "package_ipk" since perl
provides perl-module-warnings-register, the "smart install
perl-module-warnings-register" also works well, this was because
_search_pkg_name_in_feeds() only searched pkg name, but no provides,
this patch fixes the problem.

(From OE-Core rev: 476f9ab6e37bd516919862835e6e00c960a9e242)

Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:45 +01:00
Khem Raj
a0590d1ada rootfs: Do not uninstall update-rc.d
update-rc.d is now needed by systemd to interact with sysv
scripts, so if we have a mixed system, then we can not uninstall
update-rc.d as it is going to break systemd functionality

(From OE-Core rev: acf90b6c299afe9e9c8fa33c3c6992bfcf40fbbf)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:45 +01:00
Richard Purdie
e3b5d8f42c qemurunner: Drop error to a warning to improve user feedback
If a task shows an error, the full log is surpressed since bitbake assumes
the user has been shown what is wrong. In this code path that isn't the
case and its much more helpful to show the user the full error. Therefore
show a warning instead to aid usability.

(From OE-Core rev: 4ccef5543649262a1630bff586ef9048fe164016)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:44 +01:00
Qi.Chen@windriver.com
d7efdfeb5b copy_buildsystem: make sure bitbake directory is copied
The previous code assumes that bitbake/ directory is under the core layer.
This is the case for Yocto project. But users might clone oe-core and bitbake
separately. So we use bb.__file__ to locate the bitbake directory to make sure
it's copied into the extensible SDK.

(From OE-Core rev: 1be1db87343a48e9c25297245a2749d9df25d23c)

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:41 +01:00
Mariano Lopez
6b41b7cc32 testimage: handle SIGTERM to conclude runqemu
In the current state if a SIGTERM is sent to
the testimage worker, the worker will exit but
runqemu and qemu won't exit and the processes
need to be killed manually to free the
bitbake lock.

This allows to catch the SIGTERM signal in
testimage, this way it is possible to stop
runqemu and qemu and allow to free the bitbake lock.

Also this allows to skip the rest of the tests
when running the tests in qemu or real hardware.

This also solves minimal breaks in the setup of the
runtime test when checking if qemu is alive.

[YOCTO #8239]

(From OE-Core rev: 2694d2f17d597b44fcc7aed5f6836081fa88a6b3)

Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com>
Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:39 +01:00
Martin Jansa
ae00b59200 rootfs.py: Allow to override postinst-intercepts location
* useful when we need to overlay/extend intercept scripts from oe-core

(From OE-Core rev: 7d08d2d5c0ae686e3bb8732ea82f30fd189b1cd8)

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-09 14:27:38 +01:00
Lucian Musat
4925fa08e1 oeqa/decorators: Fixed a problem with tests having the same names.
When two or more tests had the same name but different classes then
the decorator log whould have the output all wrong. This was because
a comparison which was made only between method names but now it
compares classes too.

[YOCTO #8029]

(From OE-Core rev: 2b475f82d13b5c04d0c483d11a7df5e9352caa75)

Signed-off-by: Lucian Musat <george.l.musat@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-06 15:26:22 +01:00
Richard Purdie
ef0fe3193e oeqa: Test failure/cleanup improvements
Currently, if qemu segfaults, the tests merrily continue trying to execute
which takes time for them to timeout and is a bit silly. Worse, no logs about
the segfault are shown to the user, its silent!

This patch tries to unravel the tangled web of issues and ensures that we:

* install a SIGCHLD handler which tells the user qemu exited
* check if qemu is running, if it isn't fail the test outright
* don't leave processes behind in sshcontrol which would hold
  bitbake.lock and block shutdown

(From OE-Core rev: 5c04b1ca1e989f569d5755a646734d01a0c56cae)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-06 15:26:18 +01:00
zjh
fac0d67ec2 testimage: filter proper test cases by tags
If a test case is decorate by oeqa.utils.decorators.tag, this case will
by add a tag, testrunner will filter these tags by TEST_SUITES_TAGS
[YOCTO #7849]

(From OE-Core rev: 085589b1018ba4d950baf7bcfb499be02c1b29fc)

Signed-off-by: zjh <junhuix.zhang@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-09-04 16:23:52 +01:00