Simplified command line arguments in client.
authorStanislaw Klekot <dozzie@jarowit.net>
Mon, 15 May 2017 20:43:41 +0000 (22:43 +0200)
committerStanislaw Klekot <dozzie@jarowit.net>
Mon, 15 May 2017 20:43:41 +0000 (22:43 +0200)
bin/brook
doc/manpages/client.rst

index 538ac43..867ff9c 100755 (executable)
--- a/bin/brook
+++ b/bin/brook
@@ -29,15 +29,10 @@ def set_read_channels(option, opt_str, value, parser):
 parser = optparse.OptionParser(
     usage = "\n  <...> | %prog --send=<channel> [--send-address=<addr>]"
             "\n  %prog --read=<channels> [--read-address=<addr>] | <...>"
-            "\n  %prog --exec [--read=...] [--send=...] [options] -- <command> <args> ..."
+            "\n  %prog [--read=...] [--send=...] [options] -- <command> <args> ..."
 )
 
 parser.add_option(
-    "--exec", dest = "mode",
-    action = "store_const", const = "exec", default = "stdio",
-    #help = "",
-)
-parser.add_option(
     "--send", dest = "pub_chan",
     #help = "",
     metavar = "CHANNEL"
@@ -61,12 +56,11 @@ parser.add_option(
     metavar = "HOST:PORT",
 )
 
-(options, args) = parser.parse_args()
-
-if options.mode == "exec" and len(args) == 0:
-    parser.error("no command to execute provided")
+(options, command) = parser.parse_args()
+if len(command) == 0:
+    command = None
 
-if options.mode == "stdio" and \
+if command is None and \
    options.pub_chan is not None and options.sub_chan is not None:
     parser.error("reader and sender are mutually exclusive in STDIO mode")
 
@@ -304,7 +298,7 @@ if options.sub_chan is not None:
     for chan in options.sub_chan:
         reader.subscribe(chan)
 
-if options.mode == "stdio":
+if command is None: # STDIO mode
     if options.pub_chan is not None:
         readfh = ReadHandle(sys.stdin)
         sys.stdout.close()
@@ -314,7 +308,7 @@ if options.mode == "stdio":
 else:
     devnull = open("/dev/null", "rw")
     child_process = subprocess.Popen(
-        args,
+        command,
         shell = False,
         close_fds = True,
         stdin  = subprocess.PIPE if options.sub_chan is not None else devnull,
index 3305f7e..c705a3b 100644 (file)
@@ -9,7 +9,7 @@ Synopsis
 
     <data-generator> | brook --send=<channel> [--send-address=<addr>]
     brook --read=<channels> [--read-address=<addr>] | <data-reader>
-    brook --exec [--read=...] [--send=...] [options] -- <command> <args> ...
+    brook [--read=...] [--send=...] [options] -- <command> <args> ...
 
 Description
 ===========
@@ -28,8 +28,6 @@ Options
 
 .. program:: brook
 
-.. option:: --exec
-
 .. option:: --send <channel>
 
 .. option:: --read <channels>