summaryrefslogtreecommitdiffstats
path: root/meta/lib/oeqa/runtime
Commit message (Collapse)AuthorAgeFilesLines
* logrotate.py: restore /etc/logrotate.d/wtmpMingli Yu2019-03-241-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During the test logrotate.LogrotateTest.test_1_logrotate_setup, there is below logic: # mkdir $HOME/logrotate_dir # sed -i "s#wtmp {#wtmp {\n olddir $HOME/logrotate_dir#" /etc/logrotate.d/wtmp After all logrotate.LogrotateTest finished, only cleanup $HOME/logrotate_dir as below, but don't restore the config file /etc/logrotate.d/wtmp. [snip] def tearDownClass(cls): cls.tc.target.run('rm -rf $HOME/logrotate_dir') [snip] That's to say, there is one additional line added to /etc/logrotate.d/wtmp and will make the logrotate service start failed when run systemd.SystemdBasicTests.test_systemd_failed Take an example as below when run test as root: # cat /etc/logrotate.d/wtmp # no packages own wtmp -- we'll rotate it here /var/log/wtmp { olddir /root/logrotate_dir missingok monthly create 0664 root utmp minsize 1M rotate 1 } # ls /root/logrotate_dir ls: cannot access '/root/logrotate_dir': No such file or directory # systemctl start logrotate Job for logrotate.service failed because the control process exited with error code. See "systemctl status logrotate.service" and "journalctl -xe" for details. # systemctl status logrotate logrotate.service - Rotate log files Loaded: loaded (/lib/systemd/system/logrotate.service; static; vendor preset> Active: failed (Result: exit-code) since Wed 2019-02-13 03:35:19 UTC; 7s ago Docs: man:logrotate(8) man:logrotate.conf(5) Process: 540 ExecStart=/usr/sbin/logrotate /etc/logrotate.conf (code=exited, status=1/FAILURE) Main PID: 540 (code=exited, status=1/FAILURE) Feb 13 03:35:18 qemumips systemd[1]: Starting Rotate log files... Feb 13 03:35:19 qemumips logrotate[540]: error: wtmp:9 error verifying olddir path /root/logrotate_dir: No such file or directory Feb 13 03:35:19 qemumips logrotate[540]: error: found error in file wtmp, skipping Feb 13 03:35:19 qemumips systemd[1]: logrotate.service: Main process exited, code=exited, status=1/FAILURE Feb 13 03:35:19 qemumips systemd[1]: logrotate.service: Failed with result 'exit-code'. Feb 13 03:35:19 qemumips systemd[1]: Failed to start Rotate log files. Add the logic to restore /etc/logrotate.d/wtmp to make the cleanup complete to fix the above issue. (From OE-Core rev: a2db9320d97d12d87524ff16a329f9c38a8da33f) (From OE-Core rev: a5dcf0c4bd9a0be2f2484b0b1b3e77f1f2128dfc) Signed-off-by: Mingli Yu <Mingli.Yu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/dnf: Fix test error when static libs are enabledRichard Purdie2019-03-241-1/+1
| | | | | | | | | | | | | | | The test works by excluding curl-dev which curl-staticdev depends upon. When static libraries aren't disabled, this leads to an odd looking test failure. Simply exclude curl-staticdev as well in case its enabled to make sure the test always works. (From OE-Core rev: dfded083d9456c8d2bb168dbe8e08b2ffb3e1a26) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/utils/httpserver: Rework to avoid hangs and improve loggingRichard Purdie2019-02-253-3/+3
| | | | | | | | | | | | | | | | | | | | | | testimage.bbclass installs a SIGTERM handler which conflicts with the use of multiprocessing here. This is paritcularly problematic if the http service is terminated before its started and hence before its had a chance to reset the default signal handler (as the code was written). Instead, temporarily remove testimage's handler whilst forking the http process which means the correct handler is installed and won't deadlock. Also take the opportunity to add in some log messages about the server start and shutdown so that future debugging is easier and its clearer what the code is doing. (From OE-Core rev: cc0471439aa0085ca87deccf061c5b676ef12388) (From OE-Core rev: 4eac9a5337d93b6cbd3916af97f62bb04881c9cd) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/dnf: Make sure test_dnf_install does not skippedYeoh Ee Peng2019-02-251-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | During debugging dnf issue, we found that the test_dnf_install PASSED the testing even though the environment does not allow dnf install to run successfully. Further debugging had identified that current test_dnf_install will execute dnf install even when the package to be installed already exist, thus dnf install will just skipped and this test will PASSED even though it was not. To solve this, added additional logic to check if the package to be installed already exist, if yes then remove the package before actually run dnf install. This will make sure dnf install was tested as expected. (From OE-Core rev: 4f662b253f7313c4e02bfafb527cdac076b6309a) (From OE-Core rev: a80498e62898110e2ed6b01cbb9f5dd85995d13b) Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* perl: add testdepends for sshArmin Kuster2019-02-251-0/+2
| | | | | | | | | | | | | | | fixes: DEBUG: [Running]$ ssh -l root -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o LogLevel=ERROR 192.168.7.4 export PATH=/usr/sbin:/sbin:/usr/bin:/bin; perl -e '$_="Uryyb, jbeyq"; tr/a-zA-Z/n-za-mN-ZA-M/;print' | DEBUG: time: 1548816904.4024463, endtime: 1548817204.397057 | DEBUG: Partial data from SSH call: ssh: connect to host 192.168.7.4 port 22: Connection refused for master/thud/sumo (From OE-Core rev: 76c66e061cdcdcbad73ed503668115120feb0ea3) Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: rationalise Perl testsRoss Burton2019-02-251-28/+4
| | | | | | | | | | | | | | As with the Python test, this can be both better and faster. No need to copy a file, just run a one-liner. (From OE-Core rev: c6eef46747fe58bb2310be4f06d2fa9b67901d72) (From OE-Core rev: 9188ef8d1edbba8041a73d3bb8a9bfd194db0e92) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/qemu & runtime: qemu do not need ip input from externalYeoh Ee Peng2019-02-251-1/+1
| | | | | | | | | | | | | | | Qemu do not use the ip input from external. It will retrieve ip from QemuRunner instance and assign ip value. (From OE-Core rev: 14d99dc6c39c963ba3e0d9a30274846bd5369210) (From OE-Core rev: e4990ae01c9f3f486b4b745a2602795e9d496109) Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/cases: Improve dependencies of kernel/gcc/build testsRichard Purdie2019-02-256-30/+31
| | | | | | | | | | | | | Mark up these tests as needing a compiler, make and kernel source code as appropriate, the image feature requirements can then be retired. (From OE-Core rev: 9f64e6c25abdf494fb511e9cd401f8dcaa08be2a) (From OE-Core rev: 544c56b6950f0598d5eaf62d9ae9d9de5fcb7eaf) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/cases: Improve test dependency informationRichard Purdie2019-02-2510-25/+32
| | | | | | | | | | | | | | | | Add the OEHasPackage decorator to a variety of tests so they determine automatically if they should run against a given image. To ensure tests can do this we need to move target operations such as scp commands into the tests and out of the class startup/teardown. (From OE-Core rev: 60d6580b85714b8960a964e775d76a7f937f5e5a) (From OE-Core rev: 03b7658369bb7c1c8fbbaac7d9e281617cc16135) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/python: clean up Python testRoss Burton2019-02-251-30/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | Currently this is three test cases: 1) test_python_exists. Fail if python3 isn't in PATH. 2) test_python_stdout. Run a Python script and check the output is as expected 3) test_python_testfile. Check that a file test_python_stdout wrote to exists. (1) should be a setup and skip the test module if it isn't present. (2) and (3) should be merged, there's no point copying over a two line Python file, and the test doesn't verify that the file doesn't exist in the first place. Rewrite the test to check that Python is present in a class setup so the entire test is skipped if it isn't and do some simple rot13 to verify that bytecode is being executed correctly. (From OE-Core rev: a35be5f32b4fe70b18ac1e2eccfd94558cecfbba) (From OE-Core rev: babdd2f6addb06c23e4882107be07034ca49bcb8) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/cases/python: use python 3 rather than python 2Alexander Kanavin2019-02-251-3/+3
| | | | | | | | | | | | | | For example, core-image-sato skipped the test alltogether, as it no longer pulls in Python 2.x at all. (From OE-Core rev: 5ad0fe9ac6b6362011a17afaa7bee8e788093915) (From OE-Core rev: bde50fc78ae75fd585f8914e458d65c328857fb2) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/cases/rpm.py: change to use base-passwd-docChen Qi2019-02-251-13/+13
| | | | | | | | | | | | | | | | | | | | | The test cases assume that rpm-doc is built out, as it says it its comment. This is not always true. And it sometimes results in following error. | cls.tc.target.copyTo(test_file, dst) | UnboundLocalError: local variable 'test_file' referenced before assignment Change to use base-passwd-doc, as this package is more likely to be built out than rpm-doc. (From OE-Core rev: 2e23543b48921182307065c1fa9e8b9d7fbb3cdc) (From OE-Core rev: 1ce378ce07d2c49f40054893a623456c8471e177) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: replace Alex Kanavin's @intel email address with a personal oneAlexander Kanavin2019-02-251-1/+1
| | | | | | | | | | | | | | As I will be leaving Intel, this address will no longer be valid, so swap it for my personal one for now. (From OE-Core rev: ea58ff101e28dfda3410de66d775df3d8a1e5a96) (From OE-Core rev: 61bca5a7f6b3fc03cd88cbf8867708d28e0a3522) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: make it work for multiple usersRobert Yang2019-02-251-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | There are failures when multiple users run oe-selftest on the same host: PermissionError: [Errno 13] Permission denied: '/tmp/oe-saved- tests/201812250324_qemu' This is because /tmp/oe-saved-tests was created by user A, while user B tries to write data in it, then the error will happen. This patch can fix the problem. Move the dumped data to ${LOG_DIR}/runtime-hostdump/ rather than /tmp/oe-saved-tests/ to fix the problem. (From OE-Core rev: e219fe5329599cd6c3682f521eaee3852a2c8980) (From OE-Core rev: 872c6e5101f4f27dcfc63d141d1b6568f46d2b5f) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runtime/dnf: Add new dnf test casesJose Perez Carranza2019-02-251-0/+40
| | | | | | | | | | | | | | | | | Add test cases to test “exclude” and “installroot“ options, also modify the logic of filtering packages on the feed to have all the packages needed by the tests. [YOCTO #10744] (From OE-Core rev: 1121806603c6f621d084b692216f3f616a0768dc) (From OE-Core rev: e1b050f53ece2a31cd6866d2d737d7c67a44cea4) Signed-off-by: Jose Perez Carranza <jose.perez.carranza@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/ptest: Inject results+logs into stored json results fileRichard Purdie2018-12-161-2/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows the ptest results from ptest-runner, run in an image to be transferred over to the resulting json results output. Each test is given a pass/skip/fail so individual results can be monitored and the raw log output from the ptest-runner is also dumped into the results json file as this means after the fact debugging becomes much easier. Currently the log output is not split up per test but that would make a good future enhancement. I attempted to implement this as python subTests however it failed as the output was too confusing, subTests don't support any kind of log output handling, subTest successes aren't logged and it was making things far more complex than they needed to be. We mark ptest-runner as "EXPECTEDFAILURE" since its unlikely every ptest will pass currently and we don't want that to fail the whole image test run. Its assumed there would be later analysis of the json output to determine regressions. We do have to change the test runner code so that 'unexpectedsuccess' is not a failure. Also, the test names are manipuated to remove spaces and brackets with "_" used as a replacement and any duplicate occurrences truncated. (From OE-Core rev: a13e088942e2a3c3521e98954a394e61a15234e8) (From OE-Core rev: 526ceab9d0e43f73635bb92e8dd7763ef75ad33b) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/cases/multilib.py: fix test_file_connman skipping logicChen Qi2018-07-021-1/+1
| | | | | | | | | | | | | | | | | | | The test_file_connman should be executed only when 'lib32-connman' is installed and 'connman' is not installed. When lib32-connman and connman are both installed, the /usr/sbin/connmand could be from connman or lib32-connman, depending on the installation order. What we want to check is the connmand command from lib32-connman, so we need to make sure that connman is not there to cause chaos. (From OE-Core rev: bc6839394c06bb695b92b2183337e7381da1e86c) (From OE-Core rev: 55eed10368da6b3179e3ad1ab9322cff32fa99cf) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/cases/multilib.py: skip if needed packages are not availableChen Qi2018-07-021-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | 1) The test cases use 'readelf' command to do the check. This command is from binutils. So skip the test if the needed binutils package is not installed. The related error message in log.do_testimage is like below. Output: sh: readelf: not found 2) The test case tests /lib/libc.so.6 from lib32-libc6. So skip the test if lib32-libc6 is not installed. The related error message in log.do_testimage is like below. Output: readelf: Error: 'lib/libc.so.6': No such file (From OE-Core rev: eae929a5c224f5c3468d6a0466d1bbb3f678a5a1) (From OE-Core rev: cb80105bbd03d8d9cc10139ed6f39b193e79c1b8) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/cases/rpm.py: skip if rpm not availableChen Qi2018-07-021-0/+1
| | | | | | | | | | | | | | | | This test case should only run when rpm package is installed. So skip it if rpm package is not installed. This fixes: RESULTS - rpm.RpmBasicTest.test_rpm_help - Testcase 1059: FAILED (From OE-Core rev: bb909a60c04248d015d988e4454f0a11b1c287da) (From OE-Core rev: 520c375d49df29453213c3cd4e2155e80e27a0ca) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/stap.py: add runtime test for systemtapVictor Kamensky2018-04-182-0/+34
| | | | | | | | | | | | | | | | Add runtime test for stap to test basic SystemTap operations: can compile very basic module and run on target device. Note we disable (-DSTP_NO_VERREL_CHECK) SystemTap additional kernel release check since during OE testing mismatching kernel-devsrc and kernels are used. (From OE-Core rev: 659d19fcddb7edaca8f5221148d479e73304b430) Signed-off-by: Victor Kamensky <kamensky@cisco.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* make-mod-scripts/kernel-devsrc: Fix objtool issuesRichard Purdie2018-03-301-1/+1
| | | | | | | | | | | | | | | | | | | Kernels which use tools/objtool can now fail when building external modules due to objtool being missing, the generated files can also cause problems for kernel-devsrc. Ensure objtool is generated in make-mod-scripts by also calling "make prepare". For devsrc, delete the generated binaries since they'd be native binaries and unsuitable for the target. The oeqa kernel module tests also need to have the additional "make prepare" step added. (From OE-Core rev: 52fd2993784b4218f5df4f343e7da45d964df305) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/opkg.py: add runtime test for opkgYeoh Ee Peng2018-03-041-0/+47
| | | | | | | | | | | | | Add runtime test for opkg to test that it can install ipk package from remote source. [YOCTO# 11488] (From OE-Core rev: 9dd4af2b70f58540b2799823957aff3413068126) Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/apt.py: add runtime test for aptYeoh Ee Peng2018-03-041-0/+47
| | | | | | | | | | | | | Add runtime test for apt to test that it can install deb package from remote source. [YOCTO# 11488] (From OE-Core rev: f380fa77d69051212fdf7dff97da611e884d05d2) Signed-off-by: Yeoh Ee Peng <ee.peng.yeoh@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime: add gobject-introspection testRoss Burton2018-01-291-0/+15
| | | | | | | | (From OE-Core rev: 497a95b576e19e39e20ac280d0db24f51b7c9679) (From OE-Core rev: 7fe336e34bbdc16a28f95ce6ec043943f8033002) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/buildcpio: Use our own mirror for sourceRichard Purdie2018-01-061-2/+1
| | | | | | | | | | We see occasional network glitches which break this test. Use our own mirror (which has a .gz instead of .bz2) to avoid the errors, we're not trying to test network connectivity. (From OE-Core rev: 038d7270aef0cccf87d50a117160c58261beb9b9) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runtime/cases/ptest.py: fail when ptests fail on targetAlexander Kanavin2018-01-051-0/+8
| | | | | | | | | | | That's the whole point isn't it? Previously this testcase succeeded even if some of the underlying on-target tests failed; the only way to find out if anything was wrong was to manually inspect the logs. (From OE-Core rev: 21b27d1e9d54d4aab412facff22cd5d3d77827a8) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runtime/cases/ptest.py: do not require ptest-pkgs in IMAGE_FEATURES; run ↵Alexander Kanavin2018-01-051-1/+4
| | | | | | | | | | | | | | | | | | | only when ptest-runner is availalble; Previously the test would execute only when all available ptests for packages in the image were installed; some of those tests may be broken, never finish, take a very long time or simply irrelevant to the user who wants to check ptests of only a few specific packages, and does so by listing them explicitly via IMAGE_INSTALL_append or similar. Presence of ptest-runner means there is at least one ptest package installed as they pull it in via a class dependency; ptest-runner is not generally installed otherwise. (From OE-Core rev: e07a2b9c2b08a465baeaaca86461e07817f84a52) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runtime/cases/_ptest.py: rename it to ptest.pyRobert Yang2017-08-231-0/+0
| | | | | | | | | | | It works now. [YOCTO #11547] (From OE-Core rev: 836393b467c3c0d53e4ace7611f991b0a5649182) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runtime/cases/_ptest.py: add skip statusRobert Yang2017-08-231-1/+6
| | | | | | | | | | | The packages' test cases maybe skipped, check and save them. [YOCTO #11547] (From OE-Core rev: 5c89060e96919c9865034a0c64fde382763da71d) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runtime/cases/_ptest.py: revive itRobert Yang2017-08-231-61/+35
| | | | | | | | | | | | | | | | * Make it work with current oeqa * Skip the test if ptest is not in DISTRO_FEATURES * Skip the test if ptest-pkgs is not in IMAGE_FEATURES * The logs are saved to: testimage/ptest_log -> testimage/ptest_log.<datetime> * This provides data that could be used to detect regressions in ptest results [YOCTO #11547] (From OE-Core rev: f1dfb59495db9e79441c8aa623ede7ef20045a20) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/parselogs: Ignore device node warnings on mipsRichard Purdie2017-08-231-0/+2
| | | | | | | | | THe newner kernels have ope firmware support enabled which leads to warnings during boot on mips. These aren't interesting and we should ignore them. (From OE-Core rev: 4ba9a6ffb4e7f6c7eee47aa13252fd981cfe5618) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime: Replace buildiptables for buildlzip on runtime testsJose Perez Carranza2017-07-081-3/+3
| | | | | | | | | | | | | | | | | Buildiptables test cases are conflicting with images built with “musl” as standard C library, in order to avoid those issues lzip package was selected to be used on the tests as this does not have any "musl" dependency. This patch is applicable for testimage tests [YOCTO # 11713] (From OE-Core rev: 41683e0ab316049e28b1f4ceaf39f0fe17722d92) Signed-off-by: Jose Perez Carranza <jose.perez.carranza@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/context.py: Add support to specify port in target_ipAníbal Limón2017-06-061-0/+6
| | | | | | | (From OE-Core rev: 7fe4c074611eb21abdf811d8f216d4df7ab6a3ea) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/case: Don't use OEQA framework internal methodsAníbal Limón2017-06-021-4/+4
| | | | | | | | | | | | The OEQA framework has internal methods for provide functionality in decorators so Test components aren't expected to override it. Use the base unittest methods for setUp and tearDown. (From OE-Core rev: 21df9f0f6d6272adc6131cdc113000a5e6ac9d46) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* parselogs: whitelist failed to enable keyboard error on intel-corei7-64California Sullivan2017-05-111-0/+1
| | | | | | | | | | | | | | | | This error is seen on the Braswell RVP platform we have been using for testing. The error is caused by atkbd.c keyboard driver, which is only for AT and PS/2 keyboards. I tested a PS/2 keyboard with the board, which worked fine, and the board does not have a separate AT connector, so this error won't cause any functional issues. [YOCTO #10110]. (From OE-Core rev: c9f83639242313ca04ec36b49602a8464e10dae8) Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* parselogs: whitelist bluetooth firmware load error for intel-corei7-64California Sullivan2017-05-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The NUC6 has issues bringing up Bluetooth early in the boot sequence. We see: [ 4.091790] Bluetooth: hci0: Minimum firmware build 1 week 10 2014 [ 4.097326] Bluetooth: hci0: Found device firmware: intel/ibt-11-5.sfi [ 4.145317] Bluetooth: hci0: Failed to send firmware data (-38) Followed by this later on: [ 11.509870] Bluetooth: hci0: Minimum firmware build 1 week 10 2014 [ 11.509988] Bluetooth: hci0: Found device firmware: intel/ibt-11-5.sfi [ 13.090308] Bluetooth: hci0: Waiting for firmware download to complete [ 13.090829] Bluetooth: hci0: Firmware loaded in 1549114 usecs [ 13.090987] Bluetooth: hci0: Waiting for device to boot [ 13.101958] Bluetooth: hci0: Device booted in 10818 usecs Bluetooth does successfully come up and the firmware is loaded. This behavior is consistent across all kernels I've tested. [YOCTO #10628]. (From OE-Core rev: 045ee89342ea8ce16e78fea9f1c73d978d66a337) Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/utils/targetbuildproject: use parent classes defaults tmpdirJoshua Lock2017-04-061-2/+1
| | | | | | | | | | Rather than hard-coding the tmpdir for TargetBuildProject to /tmp allow the parent's default handling to define an appropriate tmpdir. (From OE-Core rev: 901659a51cd53625a93f57a9c5865e90a07ec09d) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runtime/dnf : Add ID to the dnf test casesJose Perez Carranza2017-04-051-0/+12
| | | | | | | | | Add the corresponding Testopia ID to the test cases for dnf (From OE-Core rev: 434b48566f2febcc5bd5d6cd9c04788f008ffce1) Signed-off-by: Jose Perez Carranza <jose.perez.carranza@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/cases: Migrate underscore casesMariano Lopez2017-04-012-82/+59
| | | | | | | | | | | | | | | | | There were two missing cases to be migrated to the new framework: _qemutiny and _ptest. qemutiny was straightforward. ptest on the other hand wasn't working even in previous releases; it has been migrated from smart to dnf, and how ptest packages are gathered to be installed, adapted to use unicode, and removed a lot of code that wasn't needed anymore. (From OE-Core rev: ee7c19546b686e852d01df25143504d9798d10d6) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa: use WORKDIR/oe-testimage-repo to look for RPM packagesAlexander Kanavin2017-03-231-1/+1
| | | | | | | | | | | | | Using RPM deploy dir was causing errors when pre-built images were used with these steps: https://wiki.yoctoproject.org/wiki/Quality_Assurance_yocto_project [YOCTO #11173] (From OE-Core rev: f633abed51ed19522340b1d923ffc12ed7e291d6) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta/lib/oeqa: change sdk test from cvs to cpiobrian avery2017-03-221-4/+4
| | | | | | | | | | | | | | | We currently fetch,configure,build, and install cvs as our test for the sdk. cvs unfortunately, requires a default editor in order to run. The change in 94790a8254d6 that checks to see if you have something like vi installed is fragile since you may have a different default editor. This patch switches from using cvs as a test to using cpio. cpio also uses autotools so the functionality tested is equivalent. (From OE-Core rev: 233d36b0382a8b2e430c3377e50885d1a0c3ba21) Signed-off-by: brian avery <brian.avery@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dnf: add /usr/bin/dnf symlink that points to /usr/bin/dnf-2Alexander Kanavin2017-03-171-1/+1
| | | | | | | | | | | All documentation refers to dnf binary as 'dnf' yet make install does not create one - it's done by Fedora's spec file when building the rpm. Let's replicate this behavior. (From OE-Core rev: 456c4a8ffc9a292d7a3e036d92baf4a8f14d1f45) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* testimage.bbclass: fix runtime test for rpm, port smart tests to dnfAlexander Kanavin2017-03-144-206/+123
| | | | | | | (From OE-Core rev: 749a496d273f9fd378588e309cf976294584ca5f) Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/context.py: Fix use of getTarget() with testexportMariano Lopez2017-02-231-1/+10
| | | | | | | | | | | | | | | | The idea on getTarget is to use kwargs to send custom variables to different targets, instead of this, a new variable was added (just used for custom targets) and this broke testexport. So in order to fix it, just add the custom variable to kwargs. This fixes the use of getTarget() in testexport class that was introduced in 1dc8010afd71fe46fb28bb86fb7c07a5fbd3d7cf. (From OE-Core rev: cf138029a1f18f991fc7a28c81d85884942e9d56) 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>
* testimage: Implement custom target loadingJuro Bystricky2017-02-151-3/+71
| | | | | | | | | | | | | | This patch implements custom target loading for testimage, currently missing due to major changes to the test framework. Custom targets can be defined in various meta-layers, so we need an extra path information in order to find them. Any other additional info is retrieved as usual via the variables TEST_TARGET and TEST_SUITES (From OE-Core rev: 1dc8010afd71fe46fb28bb86fb7c07a5fbd3d7cf) Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime: Improve failure log outputRichard Purdie2017-02-054-22/+13
| | | | | | | | | | | Printing a message which says "configure failed" without the log output is effectively useless. If a command fails, print the output by default and simplify the calling code which makes debugging any of these failures much easier. (From OE-Core rev: b6352ff001c29f0bff10c18879b92c5618ec645c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oeqa/runtime/cases: Rename syslog module to oe_syslogAníbal Limón2017-01-311-3/+3
| | | | | | | | | | | | | | Debian based distros has a builtin syslog module so when try to load tests using unittest it references the builtin module instead of runtime/cases. [YOCTO #10964] (From OE-Core rev: 9923e3cdb58c2b3c54ec5fe99b2cec4cdc9fff92) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runtime/cases: Fix case numbers, missing cases and unused classesMariano Lopez2017-01-313-4/+10
| | | | | | | | | | | | | | | gcc: Removed unneded lines. multilib: fixed case number. syslog: added a missing test. [YOCTO #10964] (From OE-Core rev: 3f1c57191802309e58a7b3b42e8ec812e83bd8ed) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runtime/cases/smart.py: Check for IMAGE_PKGTYPE instead of PACKAGE_CLASSESMariano Lopez2017-01-311-1/+1
| | | | | | | | | | | | | | | smart test requires to build the image using rpm packages, this check was included, but it checked for PACKAGE_CLASSES=='package_rpm', and this is not true when building packages for rpm and deb/ipk. So this would check IMAGE_PKGTYPE instead. [YOCTO #10964] (From OE-Core rev: 570f50b30072a10c5eadfbbfea2647339ee85176) 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>
* runtime/cases/connman.py: Stop using oeRuntimeTestMariano Lopez2017-01-311-1/+1
| | | | | | | | | | | | | oeRuntimeTest class is not used anymore as part of runtime migration, this particular case was missed, so fix it. [YOCTO #10964] (From OE-Core rev: d928e5166d8812e7e20bc95c0a8b5cb5439ec497) 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>