[Avocado-devel] Subprocess termination

Andrei Stepanov astepano at redhat.com
Thu Feb 16 16:02:18 UTC 2017


I think

nc_process_pid = nc_process.start()

On Thu, Feb 16, 2017 at 4:58 PM, Amador Pahim <apahim at redhat.com> wrote:

> On Thu, Feb 16, 2017 at 4:38 PM, Radek Duda <rduda at redhat.com> wrote:
> > Dear avocado users and developers,
> > I have made a testcase in which is executed nc process in run function :
> > (simplified version):
> >
> > from avocado.utils import process
> >
> > def run(vt_test, test_params, env):
> >   cmd = "nc -l %s" % test_params['some_port']
> >   nc_process = process.SubProcess(cmd)
> >   return
> >
> > after testcase is executed, nc does not terminate and is still present.
> To
> > avoid this I have to kill the process e.g. by
> > process.safe_kill(nc_process_pid, signal.SIGKILL)
>
> Are you running the process with `nc_process.run()`? It's expected to
> wait for the process to finish.
>
> https://github.com/avocado-framework/avocado/blob/master/
> avocado/utils/process.py#L596-L643
>
>
> >
> > It is pretty awkward to close the process manually particularly in case
> of
> > complex testcase code
> > Shouldn't be the subprocess killed automatically after test exits?
> > After all its called SubProcess
> >
> >
> > regards,
> >
> > Radek Duda
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/avocado-devel/attachments/20170216/542d74d3/attachment.htm>


More information about the Avocado-devel mailing list