Add project deletion
[candle] / src / main / server.lisp
index 4a0866e54f6132f2e653010b0c65cb20199c9ca9..f8e97e35629c2ccfcccabb3c43da97f753ce65df 100644 (file)
   (git project "clone" src "."))
  t)
 
+(defun delete-project (name)
+ (let
+  ((project (find name *all-project* :test #'string= :key #'project-name)))
+  (when (not project)
+   (error "Project does not exists"))
+  (sb-ext:delete-directory (project-dir project) :recursive t)
+  (nremove-project project)))
+
 (defun add-job (project-name sha)
  (make-job :project (find project-name *all-project* :key #'project-name :test #'string=) :sha sha)
  t)