-
Notifications
You must be signed in to change notification settings - Fork 349
TMT: include podman checkpoint system tests #1756
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Reviewer's GuideExtend the Podman TMT system test script to include the checkpoint test by invoking the new '520-checkpoint.bats' case. File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
TMT tests failed. @containers/packit-build please check. |
3d043f8
to
d2aa05f
Compare
the failure seems to be a regression introduced with e5d2489 @kolyshkin FYI |
maybe the bisect was not correct, the failure still happens if I revert the patch. Repeating it |
now I get e0b0158 and indeed there is no error if I revert it |
do you think we need something like? diff --git a/src/libcrun/criu.c b/src/libcrun/criu.c
index 2fbcf552..6039be87 100644
--- a/src/libcrun/criu.c
+++ b/src/libcrun/criu.c
@@ -587,9 +587,10 @@ libcrun_container_checkpoint_linux_criu (libcrun_container_status_t *status, lib
const char *dest_in_root;
dest_in_root = chroot_realpath (rootfs, def->mounts[i]->destination, buf);
- if (UNLIKELY (dest_in_root == NULL))
- return crun_make_error (err, errno, "unable to resolve external bind mount `%s` under rootfs", def->mounts[i]->destination);
- dest_in_root += strlen (rootfs);
+ if (LIKELY (dest_in_root != NULL))
+ dest_in_root += strlen (rootfs);
+ else
+ dest_in_root = def->mounts[i]->destination;
ret = libcriu_wrapper->criu_add_ext_mount (dest_in_root, dest_in_root);
if (UNLIKELY (ret < 0))
@@ -916,9 +917,10 @@ libcrun_container_restore_linux_criu (libcrun_container_status_t *status, libcru
const char *dest_in_root;
dest_in_root = chroot_realpath (rootfs, def->mounts[i]->destination, buf);
- if (UNLIKELY (dest_in_root == NULL))
- return crun_make_error (err, errno, "unable to resolve external bind mount `%s` under rootfs", def->mounts[i]->destination);
- dest_in_root += strlen (rootfs);
+ if (LIKELY (dest_in_root != NULL))
+ dest_in_root += strlen (rootfs);
+ else
+ dest_in_root = def->mounts[i]->destination;
ret = libcriu_wrapper->criu_add_ext_mount (dest_in_root, def->mounts[i]->source);
if (UNLIKELY (ret < 0)) |
proposed patch: #1757 |
Commit e0b0158 "criu: support mounts where dest is a symlink" brought in a few issues. First, the concatenation of status->bundle and status->rootfs do not make any sense (and I'm not yet sure why it is used as CRIU root). Revert to using status->rootfs directly. Second, if chroot_resolve returns ENOENT, it is OK (not all paths are visible from the host -- some are only inside the mount namespace). In this case, use the destination as is. This should fix podman checkpoint failures. Signed-off-by: Kir Kolyshkin <[email protected]>
This reverts commit 55498c1. Signed-off-by: Kir Kolyshkin <[email protected]>
`podman checkpoint...` tests depend on crun as well so they should be included in the TMT system test runs. These are currently failing on podman upstream PRs, for example: [0], [1] and [2]. [0]: https://artifacts.dev.testing-farm.io/fd5c08eb-2b0d-4ea8-9c33-ac9bf3447bd8/ [1]: https://artifacts.dev.testing-farm.io/e227ef00-c5c4-43e6-9785-0b5b5fcd2908/ [2]: https://artifacts.dev.testing-farm.io/c4ef6e7a-3b5d-4afc-91b9-dd477ef699e3/ Signed-off-by: Lokesh Mandvekar <[email protected]>
d2aa05f
to
b1133e9
Compare
@lsm5 are you fine to close this one in favor of #1758? @kolyshkin FYI |
ah i didn't notice this change was included in #1758. Closing.. |
podman checkpoint...
tests depend on crun as well so they should be included in the TMT system test runs. These are currently failing on podman upstream PRs, for example: 0, 1 and 2.Summary by Sourcery
Tests: