checkpoint-restore / checkpointctl

A tool for in-depth analysis of container checkpoints
Apache License 2.0
95 stars 15 forks source link

Add container test with Podman #73

Closed snprajwal closed 1 year ago

snprajwal commented 1 year ago

This currently fails because I'm doing some container inception (trying to checkpoint a podman container running on a Fedora container in GH Actions). Not sure why CRIU is failing, and podman doesn't provide a verbose flag to log info about the checkpointing process.

Fixes #68

github-actions[bot] commented 1 year ago

Test Results

0 tests   - 24   0 :heavy_check_mark:  - 24   0s :stopwatch: ±0s 0 suites  -   1   0 :zzz: ±  0  0 files    -   1   0 :x: ±  0 

Results for commit 505fc539. ± Comparison against base commit c3bcdc6b.

snprajwal commented 1 year ago

Looks like GitHub runners don't support checkpointing with podman. The workflows throw an error for podman container checkpoint saying configured runtime does not support checkpoint/restore. We might have to use an external bare metal runner or a VM for this (maybe the CirrusCI instances we use with CRIU?)

adrianreber commented 1 year ago

Looks like GitHub runners don't support checkpointing with podman. The workflows throw an error for podman container checkpoint saying configured runtime does not support checkpoint/restore. We might have to use an external bare metal runner or a VM for this (maybe the CirrusCI instances we use with CRIU?)

The version of crun probably has not been compiled with CRIU support. Just switching to runc should already fix this.

snprajwal commented 1 year ago

Using runc lets us checkpoint, but the stats-dump file is missing for some reason. Not sure why. The logs are available here: https://github.com/snprajwal/checkpointctl/actions/runs/5477217792/jobs/9975920598#step:6:50

I am also passing -k to preserve CRIU statistics files, but that didn't change the output.

adrianreber commented 1 year ago

Maybe the Podman version is too old. We added support for statistics not from the beginning.