Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can we keep legacy runner in avocado run #5718

Closed
chunfuwen opened this issue Jul 11, 2023 · 3 comments
Closed

Can we keep legacy runner in avocado run #5718

chunfuwen opened this issue Jul 11, 2023 · 3 comments

Comments

@chunfuwen
Copy link
Contributor

  1. In the past, libvirt usually use legacy runner: avocado run --test-runner=runner --vt-type libvirt --vt-machine-type q35 --vt-connect-uri qemu:///system xx to run libvirt tests because in libvirt test scope , test case need be executed sequentially.

  2. For example, if run in parallel, one case is creating VM, another case in parallel is destroying VM. This will lead to undesirable test results

  3. After runner=nrunner is marked as default runner, and legacy runner is not supported, Libvirt Ci need additional efforts to handle parallel execution issues.(e.g forcedly specify one case name when launch avocado run)

  4. I wonder how much additional efforts we need if we still maintain support legacy runner

@richtja
Copy link
Contributor

richtja commented Jul 11, 2023

Hi @chunfuwen, unfortunately we completely deprecated the legacy runner and we don't plan to come back and support it anymore. If the only problem for Libvirt Ci is parallel run, you can use max-parallel-tasks option. With max-parallel-tasks option set to 1 the avocado behavior is very similar to legacy runner:

avocado run --max-parallel-tasks=1 examples/tests/passtest.py examples/tests/passtest.py
JOB ID     : cf59f7042c0e64fa24487bc8e5ee6a7de499c114
JOB LOG    : /home/janrichter/avocado/job-results/job-2023-07-11T10.03-cf59f70/job.log
 (1/2) examples/tests/passtest.py:PassTest.test: STARTED
 (1/2) examples/tests/passtest.py:PassTest.test: PASS (0.01 s)
 (2/2) examples/tests/passtest.py:PassTest.test: STARTED
 (2/2) examples/tests/passtest.py:PassTest.test: PASS (0.01 s)
RESULTS    : PASS 2 | ERROR 0 | FAIL 0 | SKIP 0 | WARN 0 | INTERRUPT 0 | CANCEL 0
JOB HTML   : /home/janrichter/avocado/job-results/job-2023-07-11T10.03-cf59f70/results.html
JOB TIME   : 2.22 s

You can even add it to your config file like this:

[run]
max_parallel_tasks = 1

@chunfuwen
Copy link
Contributor Author

@richtja thanks for your response

@richtja
Copy link
Contributor

richtja commented Jul 12, 2023

@chunfuwen no problem, I am closing this issue as resolved, but feel free to reopen it if you will have any additional questions.

@richtja richtja closed this as completed Jul 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

No branches or pull requests

2 participants