From f116178dcf8b450c76400e2a0fbd2991f2c227b4 Mon Sep 17 00:00:00 2001 From: Colin Okay Date: Fri, 5 Aug 2022 08:58:35 -0500 Subject: [wip] [refactor] [add] subcommands. --- app/run.lisp | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) (limited to 'app/run.lisp') diff --git a/app/run.lisp b/app/run.lisp index 2591927..987ecad 100644 --- a/app/run.lisp +++ b/app/run.lisp @@ -24,13 +24,27 @@ :key :confirm :description "prompts the user for confirmation before running the command"))) -(defun run/handler (cmd)) +(defun run/handler (cmd) + (a:if-let (args (cli:command-arguments cmd)) + (ol::run-item + (first args) (rest args) + :verbose (cli:getopt cmd :verbose) + :confirm (cli:getopt cmd :confirm) + :timeout (cli:getopt cmd :timeout)) + (cli:print-usage-and-exit cmd t))) (defparameter +run/examples+ - '(())) - + '(("Run a hypothetical command called echo-stuff with positional arguments" . + "ol run echo-stuff one two three") + ("Run a hypothetical command with id 341 with a timeout and confirmation" . + "ol run -c -t 10 341"))) (defun run/command () (cli:make-command :name "run" - :description "")) + :usage " [ARG ...]" + :description "run the identified oneliner with any arguments it might take" + :options (run/options) + :handler #'run/handler + :examples +run/examples+)) + -- cgit v1.2.3