X-Git-Url: https://code.consxy.com/gitweb/?a=blobdiff_plain;f=src%2Fmain%2Fbase.lisp;h=871da36596bc4939a5cf924cb1c5df7b839defba;hb=195548f7ebbaccfed84fff8e9558745f59f156ec;hp=133e5150060b14e954bec3e602fdf36b7cbe0b77;hpb=307e1cc54944d45d9cc258539b98ab1b8fed5523;p=candle diff --git a/src/main/base.lisp b/src/main/base.lisp index 133e515..871da36 100644 --- a/src/main/base.lisp +++ b/src/main/base.lisp @@ -2,5 +2,22 @@ (defvar *candle-dir*) +(define-condition candle-error (error) ((reason :initarg :reason :reader candle-error-reason))) +(defun raise-candle-error (reason) (error (make-instance 'candle-error :reason reason))) + (lame-db:defdbstruct project name src) -(lame-db:defdbstruct job status sha when-run (project :join project)) + +; Status here is: +; - :queued - to be run +; - :failed - job failed +; - :succeeded - job succeeded +; - :no-candle-file - no candle file was found +; - :in-progress - job is running +(lame-db:defdbstruct job status sha create-date log (project :join project)) + +; in-git here refers to whether the branch exists in git. As branches get deleted, +; this will get set to nil but we keep them around for historical reference +(lame-db:defdbstruct branch name in-git (project :join project) (job :join job)) + +(defun project-dir (project) + (format nil "~Arepos/~A/" *candle-dir* (project-name project)))