src/main.lisp

DOWNLOAD
(in-package :murja)

(defvar *server* nil)

(defun stop-server ()
  (hunchentoot:stop *server*))

(defun start-server ()
  (let ((port (or (some-> (sb-ext:posix-getenv "APP_PORT") parse-number)
		  3123)))
    (log:info "Starting murja server~%")
    (with-db
	(migrate))

    (log:info "Don't migrate~%")
    (let ((server (make-instance 'easy-routes:easy-routes-acceptor :port port)))    
      (when (equalp 3010 port)
	(setf *server* server))
      
      (hunchentoot:start server)
      (log:info "Started murja server on ~a ~%" port)
      server)))

(defun main ()
  (start-server)
  (handler-case
      (loop do (sleep 1000))
    (condition () nil)))

(in-package :common-lisp-user)
(defun run ()
  "Starts up the aggressive-murja system. Sets logging up in a way that should show up in the logs view"
  (setf hunchentoot:*catch-errors-p* nil)
  ;; for reasons I don't understand user-editor.lisp doesn't see *dev*? as t when let-bound here
  (setf lisp-fixup:*dev?* t)
  (log:info "Starting murja in *dev?* mode")
  
  (bordeaux-threads:make-thread
   (lambda ()
     (murja:main))))

;; (start-server :port 3010)