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
Spawner support for killing tasks #4994
Labels
customer:QEMU
Requirements/issues raised by the QEMU project
enhancement
nrunner
(previously nrun2run)
Projects
Milestone
Comments
|
Adding the QEMU label, because this was partially motivated by tests leaving QEMU running. |
clebergnu
added a commit
to clebergnu/avocado
that referenced
this issue
Apr 26, 2022
These tests are legacy runner specific, but their intedend feature coverage makes sense for the nrunner. Still, nrunner spawners are currently lacking support for killing tasks. Let's skip those tests until the feature is implemented. Reference: avocado-framework#4994 Signed-off-by: Cleber Rosa <crosa@redhat.com>
clebergnu
added a commit
to clebergnu/avocado
that referenced
this issue
Apr 27, 2022
These tests are legacy runner specific, but their intedend feature coverage makes sense for the nrunner. Still, nrunner spawners are currently lacking support for killing tasks. Let's skip those tests until the feature is implemented. Reference: avocado-framework#4994 Signed-off-by: Cleber Rosa <crosa@redhat.com>
clebergnu
added a commit
to clebergnu/avocado
that referenced
this issue
Apr 27, 2022
These tests are legacy runner specific, but their intedend feature coverage makes sense for the nrunner. Still, nrunner spawners are currently lacking support for killing tasks. Let's skip those tests until the feature is implemented. Reference: avocado-framework#4994 Signed-off-by: Cleber Rosa <crosa@redhat.com>
clebergnu
added a commit
to clebergnu/avocado
that referenced
this issue
Oct 25, 2022
These tests are legacy runner specific, but their intedend feature coverage makes sense for the nrunner. Still, nrunner spawners are currently lacking support for killing tasks. Let's skip those tests until the feature is implemented. Reference: avocado-framework#4994 Signed-off-by: Cleber Rosa <crosa@redhat.com>
|
I'll re-evaluate this in terms of latest Avocado and QEMU. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
customer:QEMU
Requirements/issues raised by the QEMU project
enhancement
nrunner
(previously nrun2run)
Is your feature request related to a problem? Please describe.
The legacy "runner" architecture has the ability to kill tests, and its children. But, completely limited to processes. With the nrunner architecture, which relies on spawners to create and check on tasks, this feature does not exist.
Spawners have the ability to create tasks (reporting success or not), and check on their status, but nothing that allows tasks to be forcefully terminated.
When users have tests a current Avocado job running, and signal that they don't want to proceed any further, Avocado (nrunner) should, in addition to not spawn pending tasks, also attempt (best effort) to terminate existing ones.
Describe the solution you'd like
A new interface can be added to the Spanwer plugin interface, such as
terminate_task(). For the process spawner, the implementation kill probably be similar to the existing legacy runner approach of sending SIGKILL/SIGTERM to the task process and its children. But for the Podman spawner, it can be as simple as killing (podman kill) the container itself (and thus the task running inside it would be killed too).This is related to #4911, but it's considered an enhancement instead of a bug.
The text was updated successfully, but these errors were encountered: