summaryrefslogtreecommitdiffstats
path: root/meta/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* oeqa.utils.git: support git commands with updated envMarkus Lehtonen2016-08-251-2/+6
| | | | | | | | | | | | Extend GitRepo.run_cmd so that the caller may redefine and/or define additional environment variables that will be used when the git command is run. (From OE-Core rev: 9b3c7c47f5d0fa473fe1db81b59b26531414781c) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/rpm: use su instead of sudoRoss Burton2016-08-251-3/+2
| | | | | | | | | | This test works fine with su, which is more likely to be installed in images than sudo. (From OE-Core rev: 59d10be745a1f7d31c68e4d5da9e1c3461b7d390) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* parselogs: Ignore uvesafb timeoutsRichard Purdie2016-08-251-0/+5
| | | | | | | | | | | | | | | We're periodically seeing uvesafb timeouts on the autobuilder. Whitelist these errors as there is little it seems we can do about them and we therefore choose to ignore them rather than fail the builds. [YOCTO #8245] There is a better solution proposed in the bug with a -1 timeout however this avoids failed builds until such times as that is implemented. (From OE-Core rev: 8097f2da79b7862733494d2321e3dfdb0880804d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* license: simple verification of LICENSE_<pkg> valuesMarkus Lehtonen2016-08-251-0/+18
| | | | | | | | | | | | | | | | | | LICENSE should be a superset of all LICENSE_<pkg> values. That is, LICENSE should contain all licenses and LICENSE_<pkg> can be used to "filter" this on a per-package basis. LICENSE_<pkg> shouldn't contain anything that isn't specified in LICENSE. This patch implements simple checking of LICENSE_<pkg> values. It does do not do advanced parsing/matching of license expressions, but, checks that all licenses mentioned in LICENSE_<pkg> are also specified in LICENSE. A warning is printed if problems are found. (From OE-Core rev: 0f4163a12ea431d0ba6265880ee1e557333d3211) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/buildiptables: Switch from netfilter.org to yoctoproject.org mirrorRichard Purdie2016-08-232-2/+2
| | | | | | | | | We've had some upstream mirror instability so use our own mirror for the iptables sources to ensure this doesn't affect the test results. (From OE-Core rev: 25f6af8895d5f5c6dcedde0a21285d63522769c8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa.buildperf: fix crash when creating globalres.logMarkus Lehtonen2016-08-201-1/+1
| | | | | | | | | Fix a bug that was introduced when converting to unittest framework. (From OE-Core rev: 3bdb7b2e512b2f160360e95ed5b2be3871ec0b4b) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* devtool/recipetool/meta: Adapt to bitbake API changes for ↵Richard Purdie2016-08-182-10/+11
| | | | | | | | | | | | | | multi-configuration builds Unfortunately to implenent multiconfig support in bitbake some APIs had to change. This updates code in OE to match the changes in bitbake. Its mostly periperhal changes around devtool/recipetool [Will need a bitbake version requirement bump which I'll make when merging] (From OE-Core rev: 041212fa37bb83acac5ce4ceb9b7b77ad172c5c3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* parselogs: Ignore amb_nb warning messages under qemux86*Richard Purdie2016-08-181-0/+1
| | | | | | (From OE-Core rev: 857f4ca134e4575e71993b4fa255ebafec612d1e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* parselogs.py: Add failed to setup card detect gpio error on x86California Sullivan2016-08-181-0/+1
| | | | | | | | | | | This error has occurred on the MinnowBoard Max and Turbot since its inception. It supposedly indicates a non-working SD card reader, but ours works fine. Whitelist the error. (From OE-Core rev: d577028a1d756b70da056dee73df657cf8000baf) Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* parselogs.py: Add dmi and ioremap errors to ignore list for core2California Sullivan2016-08-181-0/+2
| | | | | | | | | | These errors have been occuring since the introduction of the 4.4 kernel with no apparent functionality loss. Whitelist for now. (From OE-Core rev: 47b9058994f15507fc18ce0b08ac82a4c052966e) Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* parselogs.py: Ignore Skylake graphics firmware load errors on genericx86-64California Sullivan2016-08-181-1/+7
| | | | | | | | | | | | These errors can't be fixed without adding the firmware to the initramfs and building it into the kernel, which we don't want to do for genericx86-64. Since graphics still work acceptably without the firmware blobs, just ignore the errors for that MACHINE. (From OE-Core rev: d73a26a71b2b16be06cd9a80a6ba42ffae8412c4) Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* testimage: allow using kvm when running qemux86* machinesBill Randle2016-08-182-2/+16
| | | | | | | | | | | | Using kvm can provide significant speedups when running qemux86* machines on an x86* host. Enabled by using the new QEMU_USE_KVM variable. [YOCTO #9298] (From OE-Core rev: ebac2c8d1fcd09ebce0659a4abb445e4f1c18571) Signed-off-by: Bill Randle <william.c.randle@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa.buildperf: use oe.path.remove()Markus Lehtonen2016-08-172-13/+7
| | | | | | | | | | Drop the self-baked force_rm() method. (From OE-Core rev: c86bf80abd87acb0da5860806822c64ec9dee089) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa.buildperf: be more verbose about failed commandsMarkus Lehtonen2016-08-171-3/+9
| | | | | | | | | | Log failures of commands whose output is stored. (From OE-Core rev: 240f6e7366c8a9ea830e531d307dd2e27a61a6bd) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa.buildperf: introduce runCmd2()Markus Lehtonen2016-08-172-6/+12
| | | | | | | | | | | | | | Special runCmd() for build perf tests which doesn't raise an AssertionError when the command fails. This causes command failures to be detected as test errors instead of test failures. This way "failed" state of tests is reserved for future making it possible to set e.g. thresholds for certain measurement results. (From OE-Core rev: 09590ac76a19ee1b1b4a9188f7fce5029f0de52a) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa.buildperf: convert test cases to unittestMarkus Lehtonen2016-08-171-31/+19
| | | | | | | | | | | This commit converts the actual tests to be compatible with the new Python unittest based framework. (From OE-Core rev: 4e81967131863df7ee6c8356cb41be51f1b8c260) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa.buildperf: add BuildPerfTestResult classMarkus Lehtonen2016-08-172-74/+80
| | | | | | | | | | | | | The new class is derived from unittest.TextTestResult class. It is actually implemented by modifying the old BuildPerfTestRunner class which, in turn, is replaced by a totally new simple implementation derived from unittest.TestRunner. (From OE-Core rev: 89eb37ef1ef8d5deb87fd55c9ea7b2cfa2681b07) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa.buildperf: add BuildPerfTestLoader classMarkus Lehtonen2016-08-172-0/+6
| | | | | | | | (From OE-Core rev: b281c4a49b0df1de9b3137efb8ff50744e06c48d) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa.buildperf: derive BuildPerfTestCase class from unitest.TestCaseMarkus Lehtonen2016-08-172-38/+33
| | | | | | | | | | | | | Rename BuildPerfTest to BuildPerfTestCase and convert it to be derived from TestCase class from the unittest framework of the Python standard library. This doesn't work with our existing testcases or test runner class and these need to be modified, too. (From OE-Core rev: b0b434210a3dbd576f68344e29b8c20d18561099) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa.buildperf: rename module containing basic testsMarkus Lehtonen2016-08-172-1/+1
| | | | | | | | (From OE-Core rev: 56e455cf4b42ff4db36debd342bcb03c5199ba52) Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildperf: Add support for times without decimal partJose Perez Carranza2016-08-171-1/+5
| | | | | | | | | | | Add logic for the cases when the time retrieved does not have decimal part. (From OE-Core rev: a6c9e515f8bc590612e3082ab1c4c254711c8e3b) Signed-off-by: Jose Perez Carranza <jose.perez.carranza@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib/oeqa/selftest/bbtests: don't report expected failuresRoss Burton2016-08-171-0/+1
| | | | | | | | | | Another instance where expected failures need to be not reported to the error reporting service. (From OE-Core rev: bb1cbb8d5bd7639554edcddf1d2eac4abdbb48c7) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/syslog.py: Improve test_syslog_logger on systemdAníbal Limón2016-08-171-2/+5
| | | | | | | | | | | | | | | | When an image uses systemd journald acts as a main syslog daemon using /dev/log. The test_syslog_logger try to log a predifined message into the syslog using logger and then search using grep in /var/log/messages if this fails for some reason (file rotated) now search the predifined message into the journal. (From OE-Core rev: 26d7e5060a35d20df6f2586b70ed8d2853cc0186) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib/oe/copy_buildsystem: fix merging sstate directories for eSDKPaul Eggleton2016-08-171-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | When we don't have uninative enabled there's more merging to be done in the default configuration (SDK_EXT_TYPE = "full" which by default means SDK_INCLUDE_TOOLCHAIN = "1") and there are likely files that already exist in the sstate feed we're assembling, so we need to take care to merge the directory contents rather than just moving the directories over. Additionally we now only run this if uninative genuinely isn't enabled (i.e. NATIVELSBSTRING is different to the fixed value of "universal".) In the process of fixing this I discovered an unusual behaviour in os.rename() - when we're merging these feeds we're dealing with hard-linked sstate artifacts, and whilst os.rename() is supposed to silently overwrite an existing destination (permissions allowing), if you have the source and destination as hardlinks to the same file then the os.rename() call will just silently fail. As a result the code now just checks if the destination exists and deletes the source if so (since we know it will be the same file, we don't need to check in this case.) (From OE-Core rev: 2b5b920c6b4f4d5c243192aa75beff402fd704d3) 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>
* oeqa/oetest: Improve subprocess error reportingRichard Purdie2016-08-171-0/+9
| | | | | | | | | | | | | | | Without this, we get to know the command failed and the exit code but have no idea how the command failed since we don't get the output by default. This makes it much easier to see what went wrong and stand a chance of fixing it. (From OE-Core rev: b020b01d41ccaae5d679f1f7950af2e1a1788d39) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Allow for simultaneous do_rootfs tasks with rpmuninative-1.3Stephano Cetola2016-08-122-4/+54
| | | | | | | | | | | | | | | | | | | | | | Give each rootfs its own RPM channel to use. This puts the RPM metadata in a private subdirectory of $WORKDIR, rather than living in DEPLOY_DIR where other tasks may race with it. This allows us to reduce the time that the rpm.lock is held to only the time needed to hardlink the RPMs, allowing the majority of the rootfs operation to run in parallel. Also, this fixes the smart tests by generating an index for all packages at the time of the test, rather than using the one provided by the rootfs process. Original credit for the enhancement should go to Steven Walter stevenrwalter@gmail.com. (From OE-Core rev: a92c196449c516fe51786d429078bbb1213bb029) Signed-off-by: Stephano Cetola <stephano.cetola@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: start() add remaining args SimpleRemoteTarget and QemuTinyRunnerAníbal Limón2016-08-102-4/+4
| | | | | | | | | | | Now Runner's support extra_bootargs for the kernel so add extra_bootparams to the start() methods to avoid exception. (From OE-Core rev: 4c28c03a2322fbcb9a5c268b08eaeb71d940ee04) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/utils/httpserver.py: HTTPServer enable thread connection handlingAníbal Limón2016-08-101-1/+2
| | | | | | | | | | HTTPServer now supports multiple connections using Python threads. (From OE-Core rev: 1d45b7bd611b900bc00530144ec0634307b1314f) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* terminal: Add sleep in pid-monitor loopJacob Kroon2016-08-101-0/+2
| | | | | | | | | | | | Monitoring the process started by gnome-terminal was spinning in a busy-loop. Insert some sleeping so that we don't eat all the cpu. (From OE-Core rev: 314937429d700204f296cfd1c0c5f215a2e5b939) Signed-off-by: Jacob Kroon <jacob.kroon@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest: disable report-error class when builds are expected to failRoss Burton2016-08-102-2/+7
| | | | | | | | | | | | | Some invocations of bitbake are expected to fail, so we don't want to report the errors to errors.yoctoproject.org. Also rewrite the messages in test_invalid_patch so they reflect reality. [ YOCTO #10052 ] (From OE-Core rev: 51f74a0d1ce4de9d311becee8e7d7cc7cd703d45) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/utils/sshcontrol.py: Allows to copy symlinks to targetMariano Lopez2016-08-041-2/+7
| | | | | | | | | | | | | | Currently when copying a symlink to the target it will fail throwing an exception. This will recreate symlinks from the system performing the tests to the device under tests. [YOCTO #9932] (From OE-Core rev: 5705b7a55bc300e14c34b0530f4d49df101edd3c) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/oetest.py: Allow to export packages using symlinksMariano Lopez2016-08-041-4/+13
| | | | | | | | | | | | | | | Currently packages that contains symlinks can't be extracted and exported. This allows to export extracted such packages. A nice side effect is improved readability. [YOCTO #9932] (From OE-Core rev: 0338f66c0d246c3b8d94ac68d60fbc4c314e500b) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oetest.py: Remove check for __init__.pyMariano Lopez2016-08-041-2/+0
| | | | | | | | | | | | | | | | | | | | | | When using "auto" in TEST_SUITES there is a check for __init__.py in the <layer>/lib/oeqa/runtime/ directory in all the layers in BBLAYERS. This check was needed because the way that python 2 import the modules, now that bitbake uses python 3 there is no need these __init__.py files, moreover these files won't allow to import tests from other layers. This patch removes the check. [YOCTO #9996] (From OE-Core rev: f1cc272e4851fd994e9d052628a747ac19f90488) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oetest.py: Add command line parameter support for tag in testexportMariano Lopez2016-08-042-4/+18
| | | | | | | | | | | | | This allows to use a command line argument to change the tag used to filter test instead of rebuilding the tests. [YOCTO #8532] (From OE-Core rev: 928e0eecdb126f7d0bacd05b7057fc825e0d8f05) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* selftest/runtime-test.py: Add test for testexport SDK featureMariano Lopez2016-08-041-0/+41
| | | | | | | | | | | | | This adds test_testexport_sdk() to test the SDK feature of testexport in the CI in order to avoid breaking it. [YOCTO #9765] (From OE-Core rev: badec3d10fcdd2d000450ab533caadcff1df5e13) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/utils/commands.py: Command class improve validations/decoding in outputAníbal Limón2016-08-011-1/+4
| | | | | | | | | | | | | | | When run a command sometimes the output isn't provided so validate before trying to encode to utf-8, also some output like BIOS/EFI contains characters that can't be codified into utf-8 for this reason set errors='replace'. [YOCTO #10019] (From OE-Core rev: f2a04faf3c5d0a3cc562061b22e1c4873e1ca769) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/syslog: test_syslog_logger Don't try to use logread when ↵Aníbal Limón2016-08-011-1/+1
| | | | | | | | | | | | | | | | systemd is enabled Busybox logread uses shmmem circular buffer to retrive [1] syslog messages when systemd is enabled this shmem circular buffer isn't enabled because systemd journald doesn't provide it. [1] https://git.busybox.net/busybox/tree/sysklogd/logread.c?id=accd9eeb719916da974584b33b1aeced5f3bb346#n121 (From OE-Core rev: f49e4847ba00cdd072e5f072cb9ca69ef98af758) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/syslog.py: Improve test_syslog_loggerAníbal Limón2016-08-011-2/+7
| | | | | | | | | | | | | | | | Instead of make all the testing in a shell one liner, divide the test into 3 operations to be able to know in what part is failing. Parts, - Log message to syslog - Review if message exist in /var/log/messages - Review if message exist using logread (From OE-Core rev: f3fe3590e887ee311f23723103eca41dcf58aa8b) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* selftest/runtime-test.py: Add test for import test from other layersMariano Lopez2016-08-011-0/+20
| | | | | | | | | | | | | | | | | | There are some features in testimage/testexport that are not tested; this might lead to break some of these features without notice. This adds a new test in order to test two features of testimage: - Import test from other layers. - Install/Unistall in the DUT without a package manager. [YOCTO #9764] [YOCTO #9766] (From OE-Core rev: cffab2257dacfa741c64611dfdf361f77aff9460) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-selftest: recipetool: add tests for git URL manglingPaul Eggleton2016-08-011-0/+43
| | | | | | | | | | | | Add three tests to verify that the git URL mangling is working the way it's supposed to. This should prevent us regressing on this again in future. (From OE-Core rev: d8d01f462ddbb79cff23b544fcd0ce251f05f8ce) 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>
* lib/oe/recipeutils: fix patch_recipe*() with empty inputPaul Eggleton2016-07-261-1/+1
| | | | | | | | | | | | | | | If you supplied an empty file to patch_recipe() (or an empty list to patch_recipe_lines()) then the result was IndexError because the code checking to see if it needed to add an extra line of padding didn't check to see if there were in fact any lines before trying to access the last line. Fixes [YOCTO #9972]. (From OE-Core rev: 92a73e870478ddb2a2d137e3fff28828809bec2e) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/populate_sdk_ext: filter sstate within the extensible SDKPaul Eggleton2016-07-261-2/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the new oe-check-sstate to filter the sstate artifacts shipped with the extensible SDK by effectively running bitbake within the produced eSDK and and getting it to tell us which tasks it will restore from sstate. This has several benefits: 1) We drop the *-initial artifacts from the minimal + toolchain eSDK. This still leaves us with a reasonably large SDK for this configuration, however it does pave the way for future reductions since we are actually filtering by what will be expected to be there on install rather than hoping that whatever cuts we make will match. 2) We verify bitbake's basic operation within the eSDK, i.e. that we haven't messed up the configuration 3) We verify that the sstate artifacts we expect to be present are present (at least in the sstate cache for the build producing the eSDK). Outside deletion of sstate artifacts has been a problem up to now, and this should at least catch that earlier i.e. during the build rather than when someone tries to install the eSDK. This does add a couple of minutes to the do_populate_sdk_ext time, but it seems like the most appropriate way to handle this. Should mostly address [YOCTO #9083] and [YOCTO #9626]. (From OE-Core rev: 4b7b48fcb9b39fccf8222650c2608325df2a4507) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/populate_sdk_ext: allow including toolchain in eSDK on installPaul Eggleton2016-07-261-2/+3
| | | | | | | | | | | | | | | | | | | | | If we're to completely replace the standard SDK with the extensible SDK, we need to be able to provide the standard toolchain on install without doing anything other than installing it, so that you can install the SDK and then point your IDE at it. This is particularly applicable to the minimal SDK which normally installs nothing by default. NOTE: enabling this option currently adds ~280MB to the size of the minimal eSDK installer. If we need to reduce this further we would have to look at adjusting the dependencies and/or the sstate_depvalid() function in sstate.bbclass which eliminates dependencies, or look at reducing the size of the artifacts themselves. Implements [YOCTO #9751]. (From OE-Core rev: ed0d8ed72370df694f720cc13897493478dc1de9) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/signing: check that we have GPG in setupRoss Burton2016-07-261-0/+4
| | | | | | | (From OE-Core rev: 6eb6fde2567a2692afccb7ee0546b2c992c168aa) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/selftest/signing: use a temporary directory for GPG homeRoss Burton2016-07-261-22/+10
| | | | | | | | | | | | | | Instead of using a directory in the layer as the GPG home and carefully deleting the right files from it, use tempfile to create a temporary directory which will be cleaned up for us. Also change the public/secret key variables to be absolute paths as they're always used as absolute paths. (From OE-Core rev: d4a5b5d11c6d7d5aba5f2eb88db091c1b98ef87c) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib/oe/path: Fix tar invocation with --no-recursionClemens Lang2016-07-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | tar's --no-recursion flag only applies to files mentioned after the flag, which made it a no-op in this invocation of tar, because it was at the end of the command line. This is simple to verify with GNU tar 1.29: | $ mkdir foo | $ mkdir foo/dir | $ touch foo/dir/file | $ tar -cf - foo --no-recursion | tar t | foo/ | foo/dir/ | foo/dir/file | $ tar -cf - --no-recursion foo | tar t | foo/ Modify the code so that it actually does what the comment says by moving the flag in front of the --files-from argument. (From OE-Core rev: d45f5e71fef5ffbd4408f69c5c179dc71a3eb452) Signed-off-by: Clemens Lang <clemens.lang@bmw-carit.de> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib/oe/gpg_sign: fix output in error pathsRoss Burton2016-07-261-3/+2
| | | | | | | | | | oe.utils.getstatusoutput() is a wrapper for subprocess.getstatusoutput() which uses Universal Newlines, so the output is a str() not bytes(). (From OE-Core rev: ce24d4c3632b71939ad198268a900ee823a89b27) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* lib/oeqa/decorators: handle broken links when creating new symlinkRoss Burton2016-07-261-1/+1
| | | | | | | | | | When checking if a link exists before creating it, use os.path.lexists() as otherwise os.path.exists() on a broken link will return False. (From OE-Core rev: ec24b6de2b8686e1f779fef3a963e66f70eeba74) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* package_manager.py: Avoid installing an empty package listMark Hatle2016-07-211-0/+3
| | | | | | | | | | | | | | | It is possible in an attempt only install, that everything listed is not available to be installed. This will have the effect of clearing the package list. However, we only check for an empty package list at the beginning of the function. We need to also check before running the install, otherwise we can fail due to 'error: no package(s) given". (From OE-Core rev: 9ae6a2830dacb3c335754a6da91bd5cc30546b31) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Mingli Yu <mingli.yu@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildhistory-diff: reduce PKGR noiseEd Bartosh2016-07-211-0/+18
| | | | | | | | | | | | | | | | | | When using PR service the buildhistory-diff output contains a lot of PKGR changes: In practice the mass of PKGR updates hide other important changes as they often account for 80% of all changes. Skipped incremental and decremental changes of PKGR versions to reduce amount of the script output. All changes are still included in the output if script is run with -a/--report-all command line option. [YOCTO #9755] (From OE-Core rev: a343788b11f6c4f92ae8d2035fe8cb54f922227e) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>