Add job --log
[candle] / src / main / server.lisp
index 409a804417cf3ee0c3521ae58e2a7ce81cb46ec2..1f9a96cc1d2fd2888995c1f998c6a627911cef28 100644 (file)
   ((project (find name *all-project* :test #'string= :key #'project-name)))
   (when (not project) (error "Project does not exist"))
   (mapcar #'job->job-information (find-job-by-project project))))
+
+(defun get-job-log (project-name sha)
+ (let*
+  ((project (find project-name *all-project* :test #'string= :key #'project-name))
+   (job
+    (when project
+     (find-if
+      (lambda (job-sha)
+       (and (<= (length sha) (length job-sha)) (string= sha (subseq job-sha 0 (length sha)))))
+     (find-job-by-project project)
+     :key #'job-sha))))
+  (when (not project) (error "Project does not exist"))
+  (when (not job) (error "Job does not exist"))
+  (job-log job)))