diff --git a/integtest/process_manager_test.py b/integtest/process_manager_test.py index 39584c1a3..2a3640d23 100644 --- a/integtest/process_manager_test.py +++ b/integtest/process_manager_test.py @@ -32,6 +32,9 @@ "Worker with pid \\d+ was terminated due to signal", "Connection '.*' not found on the application registry", ], + "SSH_SHELL_process_manager": [ + "was terminated unexpectedly through the remote pid by a SIGKILL", + ], "connectivity-service": [ "errorlog: -", ], @@ -345,7 +348,9 @@ def test_restart_mlt_logs(run_dunerc) -> None: require_pattern_match( restart_text, - re.compile(r"Process 'mlt'.*?process exited\s+with exit code 0", re.DOTALL), + re.compile( + r"Process 'mlt' \(.*?\) was terminated by the process manager through the remote pid\. Reported exit code: 0\.", re.DOTALL + ), error_message="Did not find the mlt exit-code log line after graceful termination.", ) diff --git a/scripts/drunc_integtest_bundle.sh b/scripts/drunc_integtest_bundle.sh index 7cea68c87..e32a4aeb3 100755 --- a/scripts/drunc_integtest_bundle.sh +++ b/scripts/drunc_integtest_bundle.sh @@ -21,6 +21,7 @@ Options: -k -n -N + --verbosity --stop-on-failure : causes the script to stop when one of the integtests reports a failure --concise-output : suppresses run control and DAQApp messages in order to focus on test results --tmpdir : specifies a root directory to use for test output, e.g. a directory instead of '/tmp' @@ -49,7 +50,7 @@ CaptureOutput() { tee -a $1 } -GETOPT_TEMP=`getopt -o hs:f:l:k:n:N: --long help,stop-on-failure,concise-output,tmpdir: -- "$@"` +GETOPT_TEMP=`getopt -o hs:f:l:k:n:N: --long help,verbosity:,stop-on-failure,concise-output,tmpdir: -- "$@"` eval set -- "$GETOPT_TEMP" let first_test_index=0 @@ -57,6 +58,7 @@ let individual_test_requested_iterations=1 let full_set_requested_interations=1 let stop_on_failure=0 requested_test_names= +verbosity_level= PYTEST_COMMAND="pytest -c /dev/null -s --tb=short" # our core pytest command, with DAQ printout included and short pytest traceback while true; do @@ -85,6 +87,10 @@ while true; do let full_set_requested_interations=$2 shift 2 ;; + --verbosity) + verbosity_level=$2 + shift 2 + ;; --stop-on-failure) let stop_on_failure=1 PYTEST_COMMAND="${PYTEST_COMMAND} -x" # add the -x option to our pytest command to have it exit on first error @@ -106,6 +112,10 @@ while true; do esac done +if [[ "${verbosity_level}" != "" ]]; then + PYTEST_COMMAND="$PYTEST_COMMAND --integtest-verbosity ${verbosity_level}" +fi + # check if the numad daemon is running numad_grep_output=`ps -ef | grep numad | grep -v grep` if [[ "${numad_grep_output}" != "" ]]; then