Add project listing
[candle] / src / main / local.lisp
1 (in-package #:candle)
2
3 (defmethod process-job-in-system ((job-system (eql :local)) job)
4  (let
5   ((work-dir (format nil "~Awork/" *candle-dir*))
6    (result nil))
7   (sb-ext:run-program
8    "/bin/cp"
9    (list
10     "-ap"
11     (project-dir (job-project job))
12     work-dir))
13    (let*
14     ((*default-pathname-defaults* (pathname work-dir))
15      (*error-output* (make-broadcast-stream))
16      (output
17       (with-output-to-string (*standard-output*)
18        (setf result (run)))))
19     (sb-ext:delete-directory work-dir :recursive t)
20     (values result output))))