Only run checkpoint/restore tests on Fedora >= 29

Only Fedora 29 and newer has an updated container-selinux and
selinux-policy new enough to support CRIU in restoring threaded
processes in a container with SELinux enabled.

Also skip checkpoint/restore tests if rootless. CRIU requires root.

Signed-off-by: Adrian Reber <areber@redhat.com>
This commit is contained in:
Adrian Reber 2019-04-26 21:06:23 +02:00
parent 5db7b17d79
commit 76df31830c
No known key found for this signature in database
GPG Key ID: 82C9378ED3C4906A
1 changed files with 6 additions and 4 deletions

View File

@ -21,6 +21,7 @@ var _ = Describe("Podman checkpoint", func() {
)
BeforeEach(func() {
SkipIfRootless()
tempdir, err = CreateTempDirInTempDir()
if err != nil {
os.Exit(1)
@ -41,11 +42,12 @@ var _ = Describe("Podman checkpoint", func() {
if !criu.CheckForCriu() {
Skip("CRIU is missing or too old.")
}
// TODO: Remove the skip when the current CRIU SELinux problem is solved.
// See: https://github.com/containers/libpod/issues/2334
// Only Fedora 29 and newer has a new enough selinux-policy and
// container-selinux package to support CRIU in correctly
// restoring threaded processes
hostInfo := podmanTest.Host
if hostInfo.Distribution == "fedora" {
Skip("Checkpointing containers on Fedora currently broken.")
if hostInfo.Distribution == "fedora" && hostInfo.Version < "29" {
Skip("Checkpoint/Restore with SELinux only works on Fedora >= 29")
}
})