2
0
mirror of https://github.com/checkpoint-restore/criu synced 2025-08-22 18:07:57 +00:00

311 Commits

Author SHA1 Message Date
Pavel Emelyanov
edc19f139c zdtm.py: Print out file if it exists
Sometimes tests fail before generating .out file, so print its
contents only if it exists.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-10-12 13:06:10 +03:00
Pavel Emelyanov
bdb549c961 zdtm.py: Allow specifying the test suit description file
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-10-12 13:05:43 +03:00
Pavel Emelyanov
6d5635e360 zdtm.py: Lower zdtm keyword usage
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-10-12 13:05:33 +03:00
Pavel Emelyanov
f698be0a12 zdtm.py: Print tests info when listing them
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-10-12 13:05:28 +03:00
Pavel Emelyanov
9db8bd8cf4 zdtm.py: Rework tests list generation
Hand-made list of tests is not great. As Christopher suggested we can find
all executables in a directory and treat them as tests. This idea is good,
but requires a little bit more trickery.

First, some executables in directory are not tests, e.g. these are per-test
scripts, which should be skipped. Next, not all tests in zdtm can be right
now run in continuous manner (they fail), but we want to run them manually.
To fix that such tests are marked with 'noauto' flag in the description.

So we have the test test descriptor file, which states in which file to
look for tests (executable) and which of them to exclude. Maybe more, can
be added on demand.

And, finally, the per-test description goes in a ${test}.desc file in native
python eval/repr-able format. If the file is absent a default description
is used.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-10-12 13:05:02 +03:00
Pavel Emelyanov
526b7826d1 zdtm.py: Test the --restore-sibling option
The main difficulty here is that restored test becomes zdtm.py's kid
and after killing one we should wait() the test's zombie. W/o the
--restore-sibling test gets restored under existing init and gets
wait()-ed automagically.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-10-12 13:04:17 +03:00
Pavel Emelyanov
206acdf225 zdtm.py: Print criu action in logs
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-10-12 13:04:06 +03:00
Pavel Emelyanov
31944f33d6 zdtm.py: Print "test FAIL" early
In case t.kill() raises an exception (sometimes it can) it becomes unclear
what's going on.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-10-12 13:03:59 +03:00
Pavel Emelyanov
7cbb5e5a37 zdtm.py: Save existing environment for zdtm-in-ct
Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-10-12 13:03:53 +03:00
Pavel Emelyanov
0cc628915d zdtm.py: Auto-reap all ns children
When test is run in pseudo-container (--parallel execution) the new namespace's
init is the python script itself. Thus all dying tests get reparent-ed to it and
sit as zombies forever.

Create pseudo-init for such containers ripping all the children.

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
2015-10-12 13:03:41 +03:00
Pavel Emelyanov
6b83934e33 zdtm: Move towards the new generation of criu testing (v3)
A little bit more stuff added :) With these changes I can run the

  zdtm.py run --all -x cgroup -x maps04 -x different_creds -x rtc

To run cgroups tests need to add .hook calls, for maps04 I don't have
enough RAM and disk in my VM (will fix), for different_creds need to
support crfail test option (dump _must_ fail), for rtc -- plugins.

So changes since v2:

1. Added exclusion (-x option)
2. Bugfix in parallel run
3. Fixed NS root permissions
4. Fixed checks for maps before and after dump
5. Fixed thread_bomb launch
6. Print test output
7. Support .checkskip scripts
8. Support features
9. Fixed test list

Andrey, thoughts?

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
Acked-by: Andrew Vagin <avagin@openvz.org>
2015-10-07 14:50:53 +03:00