[Openchemistry-developers] MoleQueue spec proposed changes: filespec, custom filenames, multiple input files

David Lonie david.lonie at kitware.com
Thu Aug 2 14:36:39 EDT 2012


Hi all,

I'm looking at adding the possibility to use custom filenames in
MoleQueue (currently the input and output filenames are set per
program, I want to extend this to per job). The current spec handles
input files by passing either:

    "inputAsString": "PM6\n\nH 0.0 0.0 0.0\nH 1.0 0.0 0.0\n"

or

    "inputAsPath": "/path/to/local/input/file/named/h2.mop"

in the job option array (see
http://wiki.openchemistry.org/MoleQueue_JSON-RPC_Specification#Request_new_job_submission
). MoleQueue currently asks the program what the input filename should
be and then (case 1) writes the input string or (case 2) copies the
specified file to it. The user has no control over the name of the
file, and this also restricts MoleQueue from supporting programs which
require multiple input files.

I suggest defining a "filespec" JSON object for our RPC:

{
  "basename" : "string",
  "extension" : "string", // optional
  // must contain exactly one of the following:
  "path" : "/path/to/file",
  "contents" : "string containing file contents"
}

This would replace the "inputAsString" and "inputAsPath" keys with an
"inputFile" key. To address the multiple input file issue, an
"additionalInputFiles" key will be added which maps to an array of
filespecs. The difference between these two categories:

* "inputFile" is the main input file which MoleQueue will pass to the
executable (for programs that require such). The basename will be used
to name the output file, but using an output extension specified by
the program (again, only for programs that require this, e.g. "rungms
basename.inp > basename.gamout").
* The additional files are simply written in the working directories
(local/remote) prior to execution.

Comments? Concerns?

Dave



More information about the Openchemistry-developers mailing list