From eeeb41bee2a67fd2fb2ee86e22ada40253e134aa Mon Sep 17 00:00:00 2001 From: Eric Bollengier Date: Mon, 13 Feb 2023 20:17:49 +0100 Subject: [PATCH] regress: update runscript-test for cancel status --- .../scripts/bacula-dir.conf.testrunscript.in | 18 ++++++++++++++++ regress/tests/runscript-test | 21 +++++++++++++++++++ 2 files changed, 39 insertions(+) diff --git a/regress/scripts/bacula-dir.conf.testrunscript.in b/regress/scripts/bacula-dir.conf.testrunscript.in index b0fecdfc8..db3af9f4f 100644 --- a/regress/scripts/bacula-dir.conf.testrunscript.in +++ b/regress/scripts/bacula-dir.conf.testrunscript.in @@ -274,6 +274,24 @@ Job { } } +Job { + Name = "RUN_WAITQ_EXIT" + FileSet = FS_TESTJOB + JobDefs = DefaultJob + Maximum Concurrent Jobs = 10 + RunScript { + RunsWhen = Queued + Command = "@tmpdir@/exit.sh" + failjobonerror = no + runsonclient = no + } + RunScript { + RunsWhen = After + Command = "sleep 15" + runsonclient = yes + } +} + Job { Name = "Restore" Type = Restore diff --git a/regress/tests/runscript-test b/regress/tests/runscript-test index 68b48c0e2..a75e79f89 100755 --- a/regress/tests/runscript-test +++ b/regress/tests/runscript-test @@ -41,6 +41,13 @@ EOF chmod +x $tmp/asleep.sh +cat < $tmp/exit.sh +#!/bin/sh +exit 2 +EOF + +chmod +x $tmp/exit.sh + cat <${cwd}/tmp/bconcmds @output /dev/null messages @@ -105,6 +112,11 @@ messages .jlist jobid=8 .jlist jobid=9 .jlist jobid=10 +@$out $tmp/RUN_WAITQ_EXIT.log +run job=RUN_WAITQ_EXIT yes +wait +messages +.jlist jobid=11 quit END_OF_DATA @@ -244,4 +256,13 @@ if [ $? -ne 0 ]; then estat=1 fi +grep '{' $tmp/RUN_WAITQ_EXIT.log | perl -MJSON -e ' +$j1 = decode_json(<>); +exit ($j1->{data}->[0]->{jobstatus} eq "A"); +' +if [ $? -ne 1 ]; then + print_debug "ERROR: Incorrect job status reported in $tmp/RUN_WAITQ_EXIT.log" + estat=1 +fi + end_test -- 2.47.3