Megatest

Diff
Login

Differences From Artifact [e2f38ea970]:

To Artifact [e088c8d9d0]:


248
249
250
251
252
253
254
255

256


257
258
259
260
261
262
263
248
249
250
251
252
253
254

255

256
257
258
259
260
261
262
263
264







-
+
-
+
+








;;======================================================================
;; Runs
;;======================================================================

;; make a runname
;;
(define (make-runname valparts)
(define (make-runname pre post)
  "ww07.1a")
 (time->string
  (seconds->local-time (current-seconds)) "%Yw%V.%w-%H%M"))

;; collect, translate, collate and assemble a pkt from the command-line
;;
(define (command-line->pkt action args-alist)
  (let* ((args-data (if args-alist
			args-alist
			(hash-table->alist args:arg-hash)))
344
345
346
347
348
349
350
351

352
353
354
355
356
357
358
345
346
347
348
349
350
351

352
353
354
355
356
357
358
359







-
+







	       (let* ((key        (car sense))
		      (val        (cadr sense))
		      (keyparts   (string-split key ":"))
		      (contour    (car keyparts))
		      (ruletype   (let ((res (cdr keyparts)))
				    (if (null? res) #f (cadr keyparts))))
		      (valparts   (string-split val)) ;; runname-rule params
		      (runname    (make-runname #f))
		      (runname    (make-runname "" ""))
		      (runstarts  (find-pkts pdb '(runstart) `((o . ,contour)
							       (t . ,runkey))))
		      (rspkts     (map (lambda (x)
					 (alist-ref 'pkta x))
				       runstarts))
		      (starttimes ;; sort by age (youngest first) and delete duplicates by target
		       (delete-duplicates
387
388
389
390
391
392
393
394
395


396
397
398
399
400
401
402
388
389
390
391
392
393
394


395
396
397
398
399
400
401
402
403







-
-
+
+







	     keydats)))
	(hash-table-keys rgconf))
       
       ;; now have torun populated
       (for-each
	(lambda (contour)
	  (let* ((mode-tag  (string-split (or (configf:lookup mtconf "contours" contour) "") "/"))
		 (mode-patt (if (eq? (length mode-tag) 2)(cadr mode-tag) #f))
		 (tag-expr  (if (null? mode-tag) #f (car mode-tag))))
		 (tag-expr  (if (eq? (length mode-tag) 2)(cadr mode-tag) #f))
		 (mode-patt (if (null? mode-tag) #f (car mode-tag))))
	    (for-each
	     (lambda (runkeydat)
	       (let* ((runkey (car runkeydat))
		      (info   (cadr runkeydat)))
		 (for-each
		  (lambda (area)
		    (let ((runname (cadr info))