1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
##############################################################################
#
# Redmine #2981: execresult and returnszero should not be run so much
#
##############################################################################
body common control
{
inputs => { "../../default.cf.sub" };
bundlesequence => { default("$(this.promise_filename)") };
version => "1.0";
}
bundle agent init
{
}
bundle agent test
{
vars:
"subout" string => execresult("$(sys.cf_agent) -Kv -f $(this.promise_filename).sub | $(G.egrep) 'execresult|returnszero'", "useshell");
}
bundle agent check
{
# If the output contains CLASSONCE or RETONCE more than once, we fail
classes:
"ok1" not => regcmp(".*ran.*CLASSONCE.*ran.*CLASSONCE.*", "$(test.subout)");
"ok2" not => regcmp(".*ran.*RETONCE.*ran.*RETONCE.*", "$(test.subout)");
"ok" and => { "ok1", "ok2" };
reports:
DEBUG::
"agent output: $(test.subout)";
ok1.ok2::
"The duplicate output in cf-agent didn't happen";
!(ok1.ok2)::
"The duplicate output in cf-agent happened";
ok::
"$(this.promise_filename) Pass";
!ok::
"$(this.promise_filename) FAIL";
}
|