criu icon indicating copy to clipboard operation
criu copied to clipboard

ci: update base OS from 20.04 to 22.04

Open rst0git opened this issue 2 years ago • 15 comments

This patch updates the base OS image used with GitHub actions from Ubuntu 20.04 to 22.04.

rst0git avatar Jan 20 '23 10:01 rst0git

Codecov Report

Patch coverage has no change and project coverage change: -12.61% :warning:

Comparison is base (03541c0) 70.59% compared to head (5e60570) 57.98%.

:exclamation: Current head 5e60570 differs from pull request most recent head 65e2aa8. Consider uploading reports for the commit 65e2aa8 to get more accurate results

Additional details and impacted files
@@              Coverage Diff              @@
##           criu-dev    #2061       +/-   ##
=============================================
- Coverage     70.59%   57.98%   -12.61%     
=============================================
  Files           133      140        +7     
  Lines         33324    36035     +2711     
=============================================
- Hits          23525    20896     -2629     
- Misses         9799    15139     +5340     

see 106 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

codecov-commenter avatar Jan 20 '23 11:01 codecov-commenter

Do you know why the code coverage dropped so much? Are there any drivers not pre-loaded in the new Ubuntu image? Maybe you need to run modprobe before running the tests. Would be good to know the reason.

adrianreber avatar Jan 31 '23 07:01 adrianreber

Do you know why the code coverage dropped so much? Are there any drivers not pre-loaded in the new Ubuntu image? Maybe you need to run modprobe before running the tests. Would be good to know the reason.

Comparing the output of lsmod in CI with Ubuntu 20.04 and 22.04, it looks like the following modules are not loaded in the newer release:

  • aufs
  • bpfilter
  • iptable_filter
  • iptable_nat
  • iptable_security
  • msr

The aufs module has been removed in 22.04. All other modules can be loaded with modprobe but don't seem to affect the code coverage.

rst0git avatar Jan 31 '23 22:01 rst0git

Looking at the logs I see that less tests are being run on 22.04. 41 skipped instead of 39 skipped. Maybe there are a couple more things which are being skipped. Also, the codecov tool complains about the checkout not using a depth of > 1.

adrianreber avatar Feb 02 '23 17:02 adrianreber

Looking at the logs I see that less tests are being run on 22.04. 41 skipped instead of 39 skipped

Hmm, I can see 41 skipped for Alpine Test with 22.04 and 20.04, and 39 skipped for Fedora ASAN Test with 22.04 and 20.04.

Also, the codecov tool complains about the checkout not using a depth of > 1.

I am not sure if this is related to the changes in this pull request or that I rebased the branch on criu-dev and force pushed.

rst0git avatar Feb 02 '23 18:02 rst0git

You only need to look at the code coverage CI run, that is the only one doing the report.

adrianreber avatar Feb 02 '23 18:02 adrianreber

You only need to look at the code coverage CI run, that is the only one doing the report.

Thank you for pointing this out! Comparing the logs of the Coverage Tests for 22.04 and 20.04, it looks like the following two tests are skipped:

  • Skipping zdtm/static/cgroup04 (checkskip failed)
  • Skipping zdtm/static/cgroup_ifpriomap (checkskip failed)

Both tests have the following checkskip test:

test -f /sys/fs/cgroup/cgroup.controllers

These tests appear to be skipped on intentionally because Ubuntu 22.04 switched to cgroups v2.

rst0git avatar Feb 03 '23 10:02 rst0git

These tests appear to be skipped on intentionally because Ubuntu 22.04 switched to cgroups v2.

Do we have any jobs that are running on cgroupv1 and execute all tests?

avagin avatar Feb 08 '23 00:02 avagin

These tests appear to be skipped on intentionally because Ubuntu 22.04 switched to cgroups v2.

Do we have any jobs that are running on cgroupv1 and execute all tests?

Good question. Ubuntu 20.04 is still commonly used today and it might be better to run the tests with both versions. I've updated the pull request to use matrix for the base OS.

rst0git avatar Feb 08 '23 16:02 rst0git

These tests appear to be skipped on intentionally because Ubuntu 22.04 switched to cgroups v2.

Do we have any jobs that are running on cgroupv1 and execute all tests?

Good question. Ubuntu 20.04 is still commonly used today and it might be better to run the tests with both versions. I've updated the pull request to use matrix for the base OS.

This looks a bit too much. We are running tests on cgroup v1 on CentOS 7 and CentOS 8 as well as the tests on Circle CI. Too duplicate everything on 20.04 and 22.04 seems unnecessary.

I think the Circle CI tests are running more tests in contrast to GitHub Actions, as GitHub Actions still has broken TTY support. I would say try to upgrade everything to 22.04 and have the Circle CI tests run in parallel on 20.04 and 22.04.

This still does not help to understand why the code coverage dropped by 12%.

adrianreber avatar Feb 09 '23 08:02 adrianreber

Thanks, I've updated the pull request.

@adrianreber Do you know why the inotify tests in Fedora Rawhide might fail?

################### 4 TEST(S) FAILED (TOTAL 452/SKIPPED 41) ####################
 * zdtm/static/inotify00(ns)
 * zdtm/static/fanotify00(h)
 * zdtm/static/unlink_fstat041(uns)
 * zdtm/static/inotify04(ns)

rst0git avatar Feb 09 '23 09:02 rst0git

Thanks, I've updated the pull request.

@adrianreber Do you know why the inotify tests in Fedora Rawhide might fail?

################### 4 TEST(S) FAILED (TOTAL 452/SKIPPED 41) ####################
 * zdtm/static/inotify00(ns)
 * zdtm/static/fanotify00(h)
 * zdtm/static/unlink_fstat041(uns)
 * zdtm/static/inotify04(ns)

No, I am not aware of anything concerning this.

adrianreber avatar Feb 09 '23 13:02 adrianreber

A friendly reminder that this PR had no activity for 30 days.

github-actions[bot] avatar Mar 25 '23 00:03 github-actions[bot]

A friendly reminder that this PR had no activity for 30 days.

github-actions[bot] avatar Apr 26 '23 00:04 github-actions[bot]

pls take a look at CI failures.

avagin avatar Sep 04 '23 11:09 avagin

Closing in favour of https://github.com/checkpoint-restore/criu/pull/2373

rst0git avatar Mar 26 '24 10:03 rst0git