((eql error :required-argument-missing) (format *error-output* "Missing argument for ~A. See 'candle run --help'.~%" (car remaining-args)))
(remaining-args (format *error-output* "Unknown option: ~A. See 'candle run --help'.~%" (car remaining-args)))
((opera:option-present :help options) (format t "~A" (opera:usage "candle run" (run-options))))
- (t (candle:run)))))
+ ((not (candle:run)) (sb-ext:exit :code 1)))))
(defun run ()
(multiple-value-bind (options remaining-args error) (opera:process-arguments (main-options) (cdr sb-ext:*posix-argv*))
(defun run-task (task)
(format t "~%~c[1;33mRunning ~:(~A~)~c[0m~%" #\Esc (getf task :name) #\Esc)
- (eval (getf task :directions))
-; (format t "~c[1;31mFailed doc check!~c[0m~%" #\Esc #\Esc)
- (format t "~c[1;32m- ~:(~A~) Passed!~c[0m~%" #\Esc (getf task :name) #\Esc))
+ (if
+ (eval (getf task :directions))
+ (progn (format t "~c[1;32m- ~:(~A~) Passed!~c[0m~%" #\Esc (getf task :name) #\Esc) t)
+ (format t "~c[1;31m- ~:(~A~) Failed!~c[0m~%" #\Esc (getf task :name) #\Esc)))
(defun run ()
(if
(let
((candle-definition (read str)))
(format t "Running tasks for ~(~A~)~%" (getf candle-definition :name))
- (mapcar #'run-task (getf candle-definition :tasks))))))
+ (every #'identity (mapcar #'run-task (getf candle-definition :tasks)))))))