I think nc_process_pid = nc_process.start()
On Thu, Feb 16, 2017 at 4:58 PM, Amador Pahim <apa...@redhat.com> wrote: > On Thu, Feb 16, 2017 at 4:38 PM, Radek Duda <rd...@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 > >