aboutsummaryrefslogtreecommitdiffstats
path: root/meta/lib
AgeCommit message (Collapse)Author
2016-04-18oetest: make console output more verboseEd Bartosh
Added output of test runner to bitbake console output. bitbake <image> -c testimage now reports test progress to the console: NOTE: Executing RunQueue Tasks ... NOTE: recipe core-image-lsb-1.0-r0: task do_testimage: Started core-image-lsb-1.0-r0 do_testimage: test_ping (oeqa.runtime.ping.PingTest) ... ok core-image-lsb-1.0-r0 do_testimage: test_ssh (oeqa.runtime.ssh.SshTest) ... ok ... ---------------------------------------------------------------------- core-image-lsb-1.0-r0 do_testimage: Ran 38 tests in 785.100s core-image-lsb-1.0-r0 do_testimage: core-image-lsb-1.0-r0 do_testimage: OK (skipped=1) Adding more output to the console should also prevent autobuilder to kill long running tests as ab assumes that test is stuck if no console output produced by it for a long time. [YOCTO #8238] Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-04-18lib/oeqa/selftest/base.py: Correct a reference to meta/lib/oeqa/selftestPeter Kjellerstedt
Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-04-18ext-sdk-prepare.py: exclude do_rm_work from unexpected output; create unit testBill Randle
When installing the esdk with INHERIT += "rm_work", the script complains about do_rm_work as unexpected output from the bitbake run. This patch ignores any output lines with do_rm_work and further refactors the output comparison into its own function creates a new unit test to verify the fix. The unit test can be run direct from the command line or via oe-selftest. [YOCTO #9019] Signed-off-by: Bill Randle <william.c.randle@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-04-15oeqa/selftest/sstatetests: fix no-op sstate testRoss Burton
The test to verify that certain classes when inherited were no-ops only passed if the build already inherited buildhistory. To ensure that the test works as expected, use INHERITS_remove to ensure that the classes are not inherited in the base run. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-15devtool: update-recipe: handle where SRC_URI is appended to with +=Paul Eggleton
If a recipe sets SRC_URI and then appends more items to it with += (such as the current rpm recipe in OE-Core), the code in patch_recipe_file() was failing with a traceback. Work around the problem for now by dropping the existing lines if we understand the operation, else just set the value outright at the end. This leaves something to be desired as it either doesn't respect the existing structure or leaves a mess but it's better than the current breakage. We'll need to come up with a better solution later. Part of the problem is the existing code structure doesn't allow for patch_recipe_file() to know what's being added or removed - it only knows the final value that the caller wants set. Fixes [YOCTO #9458]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-14devtool: don't copy .git when building the eSDKStephano Cetola
When creating an eSDK ensure that any .git directories are not included. [ YOCTO #9426 ] Signed-off-by: Stephano Cetola <stephano.cetola@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-14npm.bbclass: Stop packagenames containing underscores from being generatedBrendan Le Foll
Package names cannot contain underscores yet some npm modules use them as part of the name, replace them with hyphens in the package name. Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-04-14rootfs.py: apply ROOTFS_POSTINSTALL_COMMAND to all package formatsBill Randle
Previously, ROOTFS_POSTINSTALL_COMMAND was run only after the opkg rootfs install post processing phase. This patch makes it generic so it is run fter any package manager specific rootfs post processing, but before _run_intercepts(). [YOCTO #9248] Signed-off-by: Bill Randle <william.c.randle@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-04-13lib/oe/lsb: sanitise the distro identifierRoss Burton
The distribution identifier is often used to create filenames, so it needs to be safe to use as a filename. Whilst most distributions have e.g. Fedora or Debian as their name, it is possible that the name contains special characters. To ensure this doesn't cause a problem strip out any non-alphanumerics from the distribution name before returning it. [ YOCTO #9443 ] Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-13Revert "oeqa/selftest/wic: add test case for sparse images"Ross Burton
This reverts commit 43150ab7ec63d804e8a998ecee9d00295b8b2bc7. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-12oeqa/runexported.py: Fix exported testMariano Lopez
With the changes introduced to test the eSDK the runexported test failed during the execution. This change fix runexported test in the least invasive way, because of the release cycle. Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-11oeqa/selftest/sstatetests: split 32/64 build host from no-op action testsRoss Burton
As more variables were being added it made sense to split this test into two: one quick test that verifies that the host being 32-bit or 64-bit doesn't impact the hashes, and another which compares stamps for two builds with several variables changed and classes inherited. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-09oeqa/selftest/wic: add test case for sparse imagesJoshua Lock
Add a testcase to build a directdisk image and check that the used disk size is less than the apparent size, as wic now assembles images as sparse files. Signed-off-by: Joshua Lock <joshua.lock@collabora.co.uk> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-08sstatesig.py: Add a method to "unlock" recipesRandy Witt
In order to support workflows using devtool where a user might want to modify tasks that exist in locked-sigs.inc, there must be a way to unlock recipes. This patch adds that support by allowing the user to add recipes to SIGGEN_UNLOCKED_RECIPES. Recipes that exist in that variable will have all their tasks unlocked, as well as any tasks that depend on that recipe. For example if foo->bar->baz, if you unlock baz, it will also unlock bar so that foo can be rebuilt without explicitly specifying bar as being unlocked. [YOCTO #9195] Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-08sstatesig.py: Improve the SIGGEN_LOCKEDSIGS_TASKSIG_CHECK messageRandy Witt
The previous message when signatures didn't match between the metadata and the locked signatures file, the message output was a bit confusing. Now the message should be of the form: The zlib-native:do_install sig is computed to be 53531910a2a7848432da89def942a91a, but the sig is locked to d25ba9035f7ccb308e51bbe1066e8d27 in SIGGEN_LOCKEDSIGS_t-x86-64 which will hopefully be more useful in understanding the problem. [YOCTO #9195] Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-08sstatesig.py: Split single locked sigs check into multiple checksRandy Witt
Add the SIGGEN_LOCKEDSIGS_TASKSIG_CHECK and SIGGEN_LOCKEDSIGS_SSTATE_EXISTS_CHECK variables to replace SIGGEN_LOCKEDSIGS_CHECK_LEVEL. SIGGEN_LOCKEDSIGS_TASKSIG_CHECK will no control whether there is a warning or error if a task's hash in the locked signature file doesn't match the computed hash from the current metadata. SIGGEN_LOCKEDSIGS_SSTATE_EXISTS_CHECK will control whther there is a warning or error if a task that supports sstate is in the locked signature file, but no sstate exists for the task. Previously you could only have warning/errors for both controlled by SIGGEN_LOCKEDSIGS_CHECK_LEVEL. This was an issue in the extensible sdk, because we know sstate won't exist for certain items in the reverse dependencies list for tasks. However, we still want to error if task signatures don't match. [YOCTO #9195] Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-05package_manager.py: better error handling in opkg's package listingPatrick Ohly
opkg does not return a non-zero exit code even if it found errors. When that happens, parsing the output leads to strange follow-up errors. To avoid this we need to check explicitly for non-empty stderr. Reporting only that on a failure also leads to shorter error messages (stdout may be very large). Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-03oe/patch: print cleaner error message when patch fails to applyMarkus Lehtonen
[YOCTO #9344] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-04-03oe/patch: more detailed error reportingMarkus Lehtonen
Show the actual command that failed when raising a CmdError. Makes figuring out what actually failed much easier. [YOCTO #9344] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-31selftest/signing: Use packagedata to obtain PR value for signing testRichard Purdie
Using PF to calculate the rpm filename doesn't work when PR server is enabled and an extra PR value can be injected. Add code to use packagedata to obtain the full name, allowing the test to work when PR server is in use. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-31lib/oe/packagedata: Add import osRichard Purdie
So that the packagedata module can be used externally to the core OE environment, add a missing import. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-31image.bbclass: Make unneeded packages for a read-only rootfs configurablePeter Kjellerstedt
Previously the list of packages that are considered unneeded for a read-only rootfs was hardcoded. This made it impossible to, e.g., have shadow installed on a system with a read-only rootfs, but where /etc is mounted writable. This also lists ${VIRTUAL-RUNTIME_update-alternatives} rather than update-alternatives (as was previously the case) since this should actually remove the intended package. Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-31scripts, lib: Don't limit traceback lengths to arbitrary valuesRichard Purdie
There appears to have been a lot of copy and pasting of the code which prints tracebacks upon failure and limits the stack trace to 5 entries. This obscures the real error and is very confusing to the user it look me an age to work out why some tracebacks weren't useful. This patch removes the limit, making tracebacks much more useful for debugging. [YOCTO #9230] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-30oeqa/runtime/parselogs.py: Add systemd unit circular dependencies errors.Aníbal Limón
When systemd is enabled as init we need to notice when circular dependencies in units happen because systemd try to solve this situation removing the unit itself. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-30selftest: Added testcase decorator to testsDaniel Istrate
1418 test_recipetool_create_cmake 1422 test_qemu 1423 test_devtool_add_git_local 1433 test_devtool_upgrade_git 1434 test_sanity_unsafe_binary_references 1435 test_read_only_image Signed-off-by: Daniel Istrate <daniel.alexandrux.istrate@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-30selftest/buildoptions.py: use INHERIT +=Robert Yang
* INHERIT = -> INHERIT += Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2016-03-29oeqa/selftest/bbtests: Test bbappend orderDaniel Istrate
BitBake should append to recipe in a predictable order. fix for [YOCTO #9145] test for [YOCTO #9138] Signed-off-by: Daniel Istrate <daniel.alexandrux.istrate@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-29sstatesig: Ensure we keep native depends for allarch recipesRichard Purdie
Without this, do_package_write_rpm doesn't depend on rpm-native which it really should since that is needed to build rpms. [YOCTO #8047] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-29oe-selftest: generate .env only in test_image_envEd Bartosh
Most of wic functionality doesn't depend on .wicenv file, so it's better to generate it only in test_image_env test case where it's used. Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-28oeqa/utils/ftools: improve remove_from_file algorithmRoss Burton
The algorithm was sub-optimal so replace it with something more elegant. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-28wic: Update after task ordering changesRichard Purdie
We need the wic env files to be available and this no longer happens automatically so ensure we have them by specifying a specific task dependency. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-28selftest/devtool: Update after make PROVIDER changesRichard Purdie
Now that make/remake needs a PREFERRED_PROVIDER, we need to set this correctly during tests. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-25lib/oe/qa: add method to check if static or dynamic linkedRoss Burton
It's useful to know if a binary is statically or dynamically linked, so add a method to determine this. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-23selftest/signing.py: RPM_GPG_PASSPHRASE_FILE -> RPM_GPG_PASSPHRASERobert Yang
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-23gpg_sign.py: get rid of pexpectRobert Yang
The python-expect is not installed on the distro such as Ubuntu by default, and we can get rid of it. Use RPM_GPG_PASSPHRASE to replace of RPM_GPG_PASSPHRASE_FILE which is more straightforward. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-23devtool: add: create git repository if URL specified as positional argumentPaul Eggleton
When we add from a fetched URL we are supposed to turn the resulting source tree into a git repository (if it isn't already one). However, we were using the older deprecated option name here instead of the positional argument, so "devtool add -f <url>" resulted in the repo being created but "devtool add <url>" didn't, which was wrong. Also update the oe-selftest tests to check that this worked. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-22parselogs: add new whitelist entries to address 4.4.3 issuesSaul Wold
Adds intel-corei7-64 with x86-common, this makes the x86-common whitelist available for intel-corei7-64 bsp also. [YOCTO #9179] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-20parselogs: add new whitelist entries to address 4.4.3 issuesSaul Wold
This message appears on older hardware and is a benign warning [YOCTO #9179] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-03-20oeqa: remove RPM 4 self testJoshua Lock
We're dropping RPM 4 as it's not well maintained, therefore remove a selftest which tests RPM 4 availability. Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-03-20lib/package_manager: remove RPM4 support codeJoshua Lock
Simplify the RPM code by removing support for RPM 4 now that we've dropped the RPM 4 recipe. Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-03-20oeqa/selftest/buildoptions: test read-only-rootfsRoss Burton
Add a test to build core-image-sato with read-only-rootfs enabled. [ YOCTO #9214 ] Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-03-20oeqa/selftest/sstatetests: verify more variables don't impact the hashRoss Burton
Add DL_DIR and TIME to the hash tests. We can't add DATE for some reason. Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-03-20selftest/buildoptions: Renamed one test caseDaniel Istrate
'test_layer_git_revisions_are_displayed_and_do_not_fail_without_git_repo' was renamed to 'test_layer_without_git_dir' which is shorter. fix for [YOCTO #9243] Signed-off-by: Daniel Istrate <daniel.alexandrux.istrate@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-03-20oeqa/utils/testexport.py: add functionality for exporting binariesCostin Constantin
This new file is encapsulating functionality for both running tests with binaries support via TestNeedsBin() decorator and exporting these binaries via testimage.bbclass file. Addresses [YOCTO #7850], [YOCTO #8478], [YOCTO #8481], [YOCTO #8536], [YOCTO #8694]. Signed-off-by: Costin Constantin <costin.c.constantin@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-03-20Revert "selftest: Added MACHINE = "qemux86" to tests that use runqemu"Paul Eggleton
This is not the correct way to handle this - it significantly increases the time taken to run oe-selftest anywhere MACHINE is set to some other value (for example "qemux86-64"), because all of the artifacts for qemux86 need to then be built as well when running the test. If we need to skip these tests on non-QEMU machines, the devtool test already demonstrates how to do that. This reverts commit 169e1eaa4fc5ed03e2307b68686a7f5b1db37a36. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-03-20recipetool: create: don't create extra files directory unconditionallyPaul Eggleton
The extra directory next to the recipe should only be created if there are files to put into it; currently only the npm plugin does this. I didn't notice the issue earlier because the test was actually able to succeed under these circumstances if the recipe file came first in the directory listing, which was a fault in my original oe-selftest test; apparently on some YP autobuilder machines the order came out reversed. With this change we can put the oe-selftest test that highlighted the issue back to the way it was, with an extra check to reinforce that only a single file should be created. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-13oeqa/selftest/recipetool: Fix test_recipetool_create_simpleRichard Purdie
Correctly handle the any other files/directories that may exist during the test. ====================================================================== FAIL: test_recipetool_create_simple (oeqa.selftest.recipetool.RecipetoolTests) ---------------------------------------------------------------------- Traceback (most recent call last): File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/utils/decorators.py", line 106, in wrapped_f return func(*args, **kwargs) File "/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-oe-selftest/build/meta/lib/oeqa/selftest/recipetool.py", line 414, in test_recipetool_create_simple self.fail('recipetool did not create recipe file; output:\n%s\ndirlist:\n%s' % (result.output, str(dirlist))) AssertionError: recipetool did not create recipe file; output: NOTE: Fetching http://www.dest-unreach.org/socat/download/socat-1.7.3.0.tar.bz2... NOTE: Unpacking /srv/www/vhosts/autobuilder.yoctoproject.org/current_sources/socat-1.7.3.0.tar.bz2 to /tmp/recipetool-Uj7MIh/ NOTE: Recipe /tmp/recipetoolqaebTo9s/recipe/socat_1.7.3.0.bb has been created; further editing may be required to make it fully functional dirlist: ['socat', 'socat_1.7.3.0.bb'] Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-13oeqa/recipetool: Fix syntax errorRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-12oeqa/recipetool: Improve debugging output by adding dirlistRichard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-03-12package_manager.py: Fix race condition in OpkgIndexer.write_index()Mariano Lopez
When writing the index using ipk packages there could be a race condition when populate the index. This happens because the architectures are repeated (specially all) and the commands generated to write the index run in parallel. This change avoid the duplication of commands using a set instead of a list. [YOCTO #8924] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>