We have two issues related to the command line, first is that it can be fairly slow, the overhead of writing the ini files, executing the separate process, then parsing the outputs sometimes takes seconds. Since some processes generate 10-20 deadline jobs, it adds up to being a minute or two of just waiting for the submissions to go through.
Other, bigger problem is that the command line has length limitations. We are currently working on a shot that has about 10.000 frames, and we do selective frame renders (rendering only frames that are used by the client in their retime). So this results in a rather long string of frames listed individually.
This simply fails to execute, as it breaches the line lenght limit of windows… :\
Regarding 2, you can use a text file containing the command line arguments. Each argument should go to a new line. If you are using the BG version of the command line, you can also specify the location of the output files explicitly.
and pass it to the deadlinecommandbg as the only argument:
deadlinecommandbg initialArgFile.txt
We have rewritten SMTD to use this approach so we can pass any number of external files as aux. files since we cannot use the old Deadline 5.x approach where they were copied and added to the job file after submission. This way, we can submit thousands of additional files with a job without hitting a command line length limit.
I feel your pain Laszlo. I’m really hoping for a pure Python interface to the repo (via something like py-mongo). I’ve done some work on fleshing out a basic wrapper API, but it’s really only suitable for querying information at this point.