> On Nov. 17, 2013, 7:33 p.m., Ben Mahler wrote: > > include/mesos/mesos.proto, lines 126-134 > > <https://reviews.apache.org/r/15542/diff/2/?file=386604#file386604line126> > > > > Is the goal of your change here to provide a way to explicitly add > > arguments rather than having to carefully construct the value string? > > > > It may be sufficient to add an 'repeated string arguments' below the > > 'required string value'. We would then behave differently if arguments is > > non-empty, preserving backwards compatibility and allowing people to > > explicitly add arguments, what do you think?
The goal of the change is that the caller can pass a command and optional arguments without having to carefully construct either the command string or the argument strings. Imagine a scenario where a framework wishes to run a command without arguments that is stored in a user's folder on their Mac. The directory is named "Company Stuff" and the command is "do_stats.py". The path is something like "/Users/Bob Marley/Company Stuff/do_stats.py" and following your proposal, if arguments aren't passed, then it has to be escaped. As far as I can tell, the changes is backwards compatible -- if there is no execv field then everything is handled the old way, with sh -c. It seems reasonable that people can opt in to shell if they know they want it. - Jason ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/15542/#review29025 ----------------------------------------------------------- On Nov. 16, 2013, 11:13 p.m., Jason Dusek wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/15542/ > ----------------------------------------------------------- > > (Updated Nov. 16, 2013, 11:13 p.m.) > > > Review request for mesos, Benjamin Hindman, Ben Mahler, and Niklas Nielsen. > > > Repository: mesos-git > > > Description > ------- > > Offer an execvp like interface for running tasks. > > Review: https://reviews.apache.org/r/15542 > > > Diffs > ----- > > 3rdparty/libprocess/3rdparty/stout/include/stout/os.hpp > f6bbf5e00a810affd8cb6f828d1f306dc8bf3051 > include/mesos/mesos.proto 655f86757487ddbe551fdcf53eb793e773ecdd34 > src/common/protobuf_utils.hpp c83cbd693abf87089288d03f01ce06200a5d9245 > src/examples/python/test_framework.py > deca48e779ae099424fa73bb9a8ac5c419c5faf1 > src/exec/exec.cpp c866838c90901610803df026329060c170d9f21a > src/launcher/executor.cpp b73ab479500a7347a38ba53acecfab9229f1080d > src/launcher/launcher.cpp d5ab66704429a95eeb8eda5188e33d8e691221af > src/launcher/main.cpp de64609905ee63096c0173fe7e64a1eafea5d6bf > src/master/http.cpp deb5c97d1a9d130ca776fda3bfb173d8682eb364 > src/master/master.cpp abab6cede01cabcff10c13caf766a9ecde0891e0 > src/messages/messages.proto 71f68a0de2362dd367b04f82853d04fd8c173cff > src/slave/monitor.cpp dd25855fa2f9f71f7ddbd0039c366f50f7eac093 > src/slave/process_isolator.cpp a6e9ed6a654972e8a51a9a033052e02ce44fe3e4 > src/slave/slave.hpp b39eaf424ada1159f2ff412c0fb3b1738e0e9de5 > src/slave/slave.cpp bb98fce41ec6ed837af3384e95cd2b0567317ea9 > src/webui/master/static/framework.html > 92f01ad2e2fbbabaca3a01d325a83f1d8cb25ffa > src/webui/master/static/frameworks.html > 834baf942b3173cef14cc8b1a648f353844f9282 > src/webui/master/static/home.html bccffd907954a38353b3e2af319d2659ba0f725f > src/webui/master/static/index.html 929cb0e9eca6825c2fe5b64a392045de6cfd8562 > src/webui/master/static/js/app.js 163c50b6cb88f33a23a1a3446d1a88070be26eab > src/webui/master/static/js/controllers.js > 1c2e73aea69432c4bb3e2062e28b193973d88937 > src/webui/master/static/offers.html > 215d65e1ad30fb0df06bcf05cec797d60672ec66 > > Diff: https://reviews.apache.org/r/15542/diff/ > > > Testing > ------- > > Ran Python test executor and `make check`. > > > Thanks, > > Jason Dusek > >
