Skip to content

ci: install libcriu-dev, require CRIU support - #2407

Merged
kolyshkin merged 3 commits into
containers:mainfrom
kolyshkin:ci-libcriu-dev
Oct 23, 2026
Merged

kolyshkin merged 3 commits into
containers:mainfrom
kolyshkin:ci-libcriu-dev

Conversation

@kolyshkin

@kolyshkin kolyshkin commented Oct 23, 2026 •

Copy link
Copy Markdown
Collaborator

The new criu 4.3 package in the criu PPA is now split into multiple packages
(criu, libcriu2, libcriu-dev, python3-pycriu, libcompel1, libcompel-dev),
following the Debian and Ubuntu packaging, so the libcriu headers and
library are no longer shipped in the criu package.

As a result, crun is built without CRIU support in CI:

configure: CRIU headers not found, building without CRIU support

and the checkpoint/restore tests are either silently skipped or, in
the runc integration tests job, fail with unknown command checkpoint
(see e.g. #2404).

Install libcriu-dev (which also pulls in libcriu2) to fix this
(the first commit is also a part of #2259).

To not let this happen again:

  • make an explicit configure --enable-criu fail if libcriu is not
    found (without the option, CRIU support is still autodetected, and
    --disable-criu works as before);
  • use --enable-criu in CI builds.

The criu package in the criu PPA is now split into multiple packages
(criu, libcriu2, libcriu-dev, python3-pycriu, libcompel1, libcompel-dev),
following the Debian and Ubuntu packaging, so the libcriu headers and
library are no longer shipped in the criu package.

Install libcriu-dev (which also pulls in libcriu2), so that crun is
built with CRIU support, and the checkpoint/restore tests are not
silently skipped.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
Assisted-by: Claude Code (claude-opus-5-5)
@kolyshkin

Copy link
Copy Markdown
Collaborator Author

The irony is, w/o runc integration tests we'd never knew our CI is broken. I was thinking about adding a check for that but we don't need it.

Will merge this asap to unblock CI

@kolyshkin
kolyshkin requested a balanced review from Copilot October 23, 2026 08:10

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

An organization owner can choose the repository organization as the billing source for reviews requested by members with a paid Copilot license. Learn about Copilot code review billing.

Currently, CRIU support is autodetected, and if libcriu is not found,
crun is silently built without checkpoint/restore support, even if
--enable-criu is given explicitly.

Make an explicit --enable-criu mean CRIU support is required, failing
configure if libcriu is not found. Without the option, CRIU support is
still autodetected, as before.

Assisted-by: Claude Code (claude-opus-5-5)
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
@kolyshkin

Copy link
Copy Markdown
Collaborator Author

I was thinking about adding a check for that but we don't need it.

actually the check is quite simple; added as a second commit

All the CI jobs which build crun using tests/ci.sh's build() install
libcriu-dev, and some of them (checkpoint-restore, runc-integration)
are pointless without CRIU support.

Pass --enable-criu to configure, so that if libcriu is missing (as it
happened after the criu package split in the criu PPA), the build fails
rather than the checkpoint/restore tests being silently skipped or
failing in a less obvious way.

Assisted-by: Claude Code (claude-opus-5-5)
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
@kolyshkin kolyshkin changed the title ci: install libcriu-dev ci: install libcriu-dev, require CRIU support Oct 23, 2026
@kolyshkin
kolyshkin requested a review from giuseppe October 23, 2026 09:11
@kolyshkin

Copy link
Copy Markdown
Collaborator Author

merging w/o lgtms to unblock ci

@kolyshkin
kolyshkin merged commit 48514ce into containers:main Oct 23, 2026
67 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants