Index: common.scm ================================================================== --- common.scm +++ common.scm @@ -183,10 +183,14 @@ (if val val default))) (define (assoc/default key lst . default) (let ((res (assoc key lst))) (if res (cadr res)(if (null? default) #f (car default))))) + +(define (common:get-testsuite-name) + (or (configf:lookup *configdat* "server" "testsuite" ) + (pathname-file *toppath*))) ;;====================================================================== ;; Misc utils ;;====================================================================== Index: megatest-version.scm ================================================================== --- megatest-version.scm +++ megatest-version.scm @@ -1,7 +1,7 @@ ;; Always use two or four digit decimal ;; 1.01, 1.02...1.10,1.11,1,1101 ... 1.99,2.00.. (declare (unit megatest-version)) -(define megatest-version 1.6003) +(define megatest-version 1.6004) Index: server.scm ================================================================== --- server.scm +++ server.scm @@ -83,16 +83,17 @@ ;; (define (server:run run-id) (let* ((curr-host (get-host-name)) (curr-ip (server:get-best-guess-address curr-host)) (target-host (configf:lookup *configdat* "server" "homehost" )) + (testsuite (common:get-testsuite-name)) (logfile (conc *toppath* "/logs/" run-id ".log")) (cmdln (conc (common:get-megatest-exe) " -server " (or target-host "-") " -run-id " run-id (if (equal? (configf:lookup *configdat* "server" "daemonize") "yes") (conc " -daemonize -log " logfile) "") - " -debug 4 "))) ;; (conc " >> " logfile " 2>&1 &"))))) + " -debug 4 testsuite:" testsuite))) ;; (conc " >> " logfile " 2>&1 &"))))) (debug:print 0 "INFO: Starting server (" cmdln ") as none running ...") (push-directory *toppath*) (if (not (directory-exists? "logs"))(create-directory "logs")) ;; host.domain.tld match host? (if (and target-host Index: tasks.scm ================================================================== --- tasks.scm +++ tasks.scm @@ -634,15 +634,18 @@ (hostname (cadr match-dat)) (pid (caddr match-dat))) (debug:print 0 "Sending SIGINT to process " pid " on host " hostname) (if (equal? (get-host-name) hostname) (begin - (process-signal (string->number pid) signal/int) - (thread-sleep! 5) (handle-exceptions exn - #t + (begin + (debug:print 0 "Kill of process " pid " on host " hostname " failed.") + (debug:print 0 " message: " ((condition-property-accessor 'exn 'message) exn)) + #t) + (process-signal (string->number pid) signal/int) + (thread-sleep! 5) (process-signal (string->number pid) signal/kill))) ;; (call-with-environment-variables (let ((old-targethost (getenv "TARGETHOST"))) (set-environment-variable "TARGETHOST" hostname) (system (conc "nbfake " kill " " pid))