(start-save-thread data-dir)
(start-processor-thread)
(communication:start-listener port background)))
(defun start-save-thread (data-dir)
(start-save-thread data-dir)
(start-processor-thread)
(communication:start-listener port background)))
(defun start-save-thread (data-dir)
(sb-thread:with-mutex (mutex)
(sb-thread:condition-broadcast waitq))))
:name "Save Thread Trigger")
(push
(lambda ()
(sb-thread:with-mutex (mutex)
(sb-thread:condition-broadcast waitq))))
:name "Save Thread Trigger")
(push
(lambda ()
(sb-thread:with-mutex (mutex)
(setf active nil)
(sb-thread:condition-broadcast waitq))
(sb-thread:join-thread save-thread))
sb-ext:*exit-hooks*)))
(sb-thread:with-mutex (mutex)
(setf active nil)
(sb-thread:condition-broadcast waitq))
(sb-thread:join-thread save-thread))
sb-ext:*exit-hooks*)))
(declare (ignore code err))
(when (not success) (raise-candle-error :project-failed-to-get-branches))
(mapcar (lambda (branch) (set-branch-in-git branch nil)) branches)
(declare (ignore code err))
(when (not success) (raise-candle-error :project-failed-to-get-branches))
(mapcar (lambda (branch) (set-branch-in-git branch nil)) branches)
(sb-ext:delete-directory (project-dir project) :recursive t)
(mapcar #'nremove-job (find-job-by-project project))
(mapcar #'nremove-branch (find-branch-by-project project))
(nremove-project project)))
(defun job->job-information (job)
(sb-ext:delete-directory (project-dir project) :recursive t)
(mapcar #'nremove-job (find-job-by-project project))
(mapcar #'nremove-branch (find-branch-by-project project))
(nremove-project project)))
(defun job->job-information (job)