Self sign-up has been disabled due to increased spam activity. If you want to get access, please send an email to a project owner (preferred) or at gitlab(at)nic(dot)cz. We apologize for the inconvenience.
kresd is not terminated after KeyboardInterupt of kresd_run.sh
Štěpán Balážikchanged title from {-kresd is not terminated after user interrupts test execution (^C)-} to kresd is not terminated after KeyboardInterupt of kresd_run.sh
changed title from {-kresd is not terminated after user interrupts test execution (^C)-} to kresd is not terminated after KeyboardInterupt of kresd_run.sh
!76 (merged) fixes only part of the problem. kresd can still get stuck in later stages of test execution.
Reproducer:
run ./kresd_run.sh
terminate it using Ctrl+C
look for kresd process using command ps -eF | grep kresd
if there is none, goto step 1 :-)
I'm can see stuck kresd process from time to time. There should be none at all when Deckard is terminated (assuming no kresd was run outside of Deckard, of course).
Fixing this became rather complicated since the switch to pytest as runner.
Pytest catches ^C and to the best of my knowledge it doesn't pass KeyboardInterrupt to the scripts in any clear way. Python should however kill all its children on any kind of merciful exit.
I tried starting the daemons with subprocess.Popenwithout the start_new_session=True parameter which seems to solve the issue. (See !172 (merged) for more discussion on this).