Daniel P. Berrangé <berra...@redhat.com> writes: > On Thu, Oct 17, 2024 at 11:32:11AM -0300, Fabiano Rosas wrote: >> Recent changes to how we invoke the migration tests have >> (intentionally) caused them to not be part of the check-qtest target >> anymore. Add the check-migration-quick target so we don't lose >> migration code testing in this job. > > But 'check-migration-quick' is only the subset of migration tests, > 'check-migration' is all of the migration tests. So surely this is > a massive regressions in covage in CI pipelines.
I'm not sure it is. There are tests there already for all the major parts of the code: precopy, postcopy, multifd, socket. Besides, we can tweak migration-quick to cover spots where we think we're losing coverage. Since our CI offers nothing in terms of reproducibility or debuggability, I don't think it's productive to have an increasing amount of tests running in CI if that means we'll be dealing with timeouts and intermittent crashes constantly. > > Experience shows us that relying on humans to run tests periodically > doesn't work well, and they'll slowly bit rot. Migration maintainers > don't have a way to run this as gating test for every pull request > that merges, and pull requests coming from non-migration maintainers > can still break migration code. Right, but migration code would still be tested with migration-quick which is executed at every make check. Do we really need the full set in every pull request? We must draw a line somewhere, otherwise make check will just balloon in duration. > > Any tests in tree need to be exercised by CI as the minimum bar > to prevent bit rot from merges. > No disagreement here. But then I'm going to need advice on what to do when other maintainers ask us to stop writing migration tests because they take too long. I cannot send contributors away nor merge code without tests. Do we need nightly CI runs? Unit tests? Bear in mind there's a resource allocation issue there. Addressing problems with timeouts/races in our CI is not something any random person can do. >> >> Signed-off-by: Fabiano Rosas <faro...@suse.de> >> --- >> .gitlab-ci.d/buildtest.yml | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml >> index 34d3f4e9ab..37247dc5fa 100644 >> --- a/.gitlab-ci.d/buildtest.yml >> +++ b/.gitlab-ci.d/buildtest.yml >> @@ -442,7 +442,7 @@ clang-system: >> CONFIGURE_ARGS: --cc=clang --cxx=clang++ --enable-ubsan >> --extra-cflags=-fno-sanitize-recover=undefined >> TARGETS: alpha-softmmu arm-softmmu m68k-softmmu mips64-softmmu >> s390x-softmmu >> - MAKE_CHECK_ARGS: check-qtest check-tcg >> + MAKE_CHECK_ARGS: check-qtest check-tcg check-migration-quick >> >> clang-user: >> extends: .native_build_job_template >> -- >> 2.35.3 >> >> > > With regards, > Daniel