X-Git-Url: https://code.consxy.com/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fserver.lisp;h=19780e24bed72a0baa095cafef23ef02da654b14;hb=b20fb177f8305dd8739d57c1bd832bd7a98ab25b;hp=f95976e3b1a3a066b51381cdfdc7bc3ef5e214ff;hpb=124e400cd0be0e884d0cb7ea400899b3288c1fc0;p=candle diff --git a/src/main/server.lisp b/src/main/server.lisp index f95976e..19780e2 100644 --- a/src/main/server.lisp +++ b/src/main/server.lisp @@ -86,11 +86,14 @@ (defun project-job-information (name) (let - ((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)))) + ((project (when name (find name *all-project* :test #'string= :key #'project-name)))) + (when (and name (not project)) (error "Project does not exist")) + (mapcar #'job->job-information + (if project + (find-job-by-project project) + *all-job*)))) -(defun get-job-log (project-name sha) +(defun find-job-by-project-and-sha (project-name sha) (let* ((project (find project-name *all-project* :test #'string= :key #'project-name)) (job @@ -102,7 +105,14 @@ :key #'job-sha)))) (when (not project) (error "Project does not exist")) (when (not job) (error "Job does not exist")) - (job-log job))) + job)) + +(defun get-job-log (project-name sha) + (job-log (find-job-by-project-and-sha project-name sha))) + +(defun retry-job (project-name sha) + (set-job-status (find-job-by-project-and-sha project-name sha) :queued) + (awaken-processor-thread)) (defun list-projects () (mapcar