Index: megatest.scm ================================================================== --- megatest.scm +++ megatest.scm @@ -96,10 +96,11 @@ "-test-status" "-gui" "-runall" ;; run all tests "-remove-runs" "-keepgoing" + "-usequeue" ) args:arg-hash 0)) (if (args:get-arg "-h") @@ -115,10 +116,14 @@ (include "launch.scm") (include "runs.scm") ;; (include "gui.scm") (define *didsomething* #f) + +;;====================================================================== +;; Misc setup stuff +;;====================================================================== ;;====================================================================== ;; Remove old run(s) ;;====================================================================== Index: runs.scm ================================================================== --- runs.scm +++ runs.scm @@ -79,11 +79,11 @@ (let ((item-paths (if (equal? item-path "") (list item-path) (list item-path "")))) (for-each (lambda (pth) - (sqlite3:execute db "INSERT OR IGNORE INTO tests (run_id,testname,event_time,item_path) VALUES (?,?,strftime('%s','now'),?);" run-id test-name pth)) + (sqlite3:execute db "INSERT OR IGNORE INTO tests (run_id,testname,event_time,item_path,state,status) VALUES (?,?,strftime('%s','now'),?,'NOT_STARTED','n/a');" run-id test-name pth)) item-paths))) ;; (define db (open-db)) ;; (test-set-status! db 2 "runfirst" "COMPLETED" "PASS" "summer") @@ -403,11 +403,12 @@ (launch-test db run-id test-conf keyvallst test-name test-path itemdat))) (testrundat (list get-prereqs-cmd launch-cmd))) (if (or (args:get-arg "-force") (null? ((car testrundat)))) ;; are there any tests that must be run before this one... ((cadr testrundat)) ;; this is the line that launches the test to the remote host - (hash-table-set! *waiting-queue* new-test-name testrundat)))))) + (if (not (args:get-arg "-keepgoing")) + (hash-table-set! *waiting-queue* new-test-name testrundat))))))) ((KILLED) (print "NOTE: " new-test-name " is already running or was explictly killed, use -force to launch it.")) ((LAUNCHED REMOTEHOSTSTART RUNNING) (if (> (- (current-seconds)(+ (db:test-get-event_time testdat) (db:test-get-run_duration testdat)))