Add environments for running
[candle] / src / main / cli.lisp
index 75ecd40b3af6b6c15eb5fe7527e1abd7d80b36f4..697fb42a5e333e9b04e7fe7dff09ecfdede4b60f 100644 (file)
  (let
   ((options
     '((:name :help :short "h" :long "help" :description "Print this usage.")
-      (:name :task :long "task" :variable-name "TASK" :takes-argument t :description "Run TASK"))))
+      (:name :task :long "task" :variable-name "TASK" :takes-argument t :description "Run TASK")
+      (:name :env :long "env" :variable-name "ENV" :takes-argument t
+       :description "Runs candle with *candle-environment* set to ENV as a keyword."))))
   (standard-cli "candle run" options args :default nil
+   (when (opera:option-present :env parsed-options)
+    (setf candle:*environment* (intern (string-upcase (opera:option-argument :env parsed-options)) :keyword)))
    (cond
     ((opera:option-present :task parsed-options)
      (let