Index: mt.scm ================================================================== --- mt.scm +++ mt.scm @@ -101,13 +101,14 @@ (begin (push-directory test-rundir) (set! tconfig (mt:lazy-read-test-config test-dat)) (pop-directory) (for-each (lambda (trigger) - (let ((cmd (configf:lookup tconfig "triggers" trigger))) + (let ((cmd (configf:lookup tconfig "triggers" trigger)) + (logf (conc test-rundir "/last-trigger.log"))) (if cmd - (system (conc cmd " " test-id " " test-rundir " " trigger " 2&>1 " test-rundir "/last-trigger.log"))))) + (system (conc "(" cmd " " test-id " " test-rundir " " trigger ") >> " logf " 2>&1"))))) (list (conc newstate "/" newstatus) (conc newstate "/") (conc "/" newstatus))))))) Index: tests.scm ================================================================== --- tests.scm +++ tests.scm @@ -321,11 +321,13 @@ (debug:print 4 "real-status " real-status ", waived " waived ", status " status) ;; update the primary record IF state AND status are defined (if (and state status) - (cdb:test-set-status-state *runremote* test-id real-status state (if waived waived comment))) + (begin + (cdb:test-set-status-state *runremote* test-id real-status state (if waived waived comment)) + (mt:process-triggers test-id state real-status))) ;; if status is "AUTO" then call rollup (note, this one modifies data in test ;; run area, it does remote calls under the hood. (if (and test-id state status (equal? status "AUTO")) (db:test-data-rollup #f test-id status work-area: work-area)) Index: tests/fullrun/tests/ez_fail_quick/testconfig ================================================================== --- tests/fullrun/tests/ez_fail_quick/testconfig +++ tests/fullrun/tests/ez_fail_quick/testconfig @@ -3,10 +3,13 @@ [ezsteps] # should fail on next step lookitnada ls /nada +[triggers] +COMPLETED/FAIL xterm;echo + [test_meta] author matt owner bob description This test runs a single ezstep which fails immediately.