diff --git a/man/gnt-debug.sgml b/man/gnt-debug.sgml index 2e624b053c8c334dd07b0c531d3f528453a0194a..89fd9e4a1f3aecc63e36d2e9a7864f5c352781b3 100644 --- a/man/gnt-debug.sgml +++ b/man/gnt-debug.sgml @@ -146,12 +146,12 @@ <cmdsynopsis> <command>submit-job</command> - <arg choice="req">opcodes_file</arg> + <arg choice="req" rep="repeat">opcodes_file</arg> </cmdsynopsis> <para> - This command builds a list of opcodes from a JSON-format file - and submits them as a single job to the master daemon. It can + This command builds a list of opcodes from JSON-format files + and submits for each file a job to the master daemon. It can be used to test some options that are not available via the command line. </para> diff --git a/scripts/gnt-debug b/scripts/gnt-debug index ff7e01b307474d5085c8e48440cf6f8418eefcea..d3bf05450c3c08cc6ad94de10d744dbc4d3273cd 100755 --- a/scripts/gnt-debug +++ b/scripts/gnt-debug @@ -71,12 +71,19 @@ def GenericOpCodes(opts, args): """ cl = cli.GetClient() - fname = args[0] - op_data = simplejson.loads(open(fname).read()) - op_list = [opcodes.OpCode.LoadOpCode(val) for val in op_data] - jid = cli.SendJob(op_list, cl=cl) - ToStdout("Job id: %s", jid) - cli.PollJob(jid, cl=cl) + job_data = [] + job_ids = [] + for fname in args: + op_data = simplejson.loads(open(fname).read()) + op_list = [opcodes.OpCode.LoadOpCode(val) for val in op_data] + job_data.append((fname, op_list)) + for fname, op_list in job_data: + jid = cli.SendJob(op_list, cl=cl) + ToStdout("File '%s', job id: %s", fname, jid) + job_ids.append(jid) + for jid in job_ids: + ToStdout("Waiting for job id %s", jid) + cli.PollJob(jid, cl=cl) return 0 @@ -139,11 +146,11 @@ commands = { help="Select nodes to sleep on"), ], "[opts...] <duration>", "Executes a TestDelay OpCode"), - 'submit-job': (GenericOpCodes, ARGS_ONE, + 'submit-job': (GenericOpCodes, ARGS_ATLEAST(1), [DEBUG_OPT, ], - "<op_list_file>", "Submits a job built from a json-file" - " with a list of serialized opcodes"), + "<op_list_file...>", "Submits jobs built from json files" + " containing a list of serialized opcodes"), 'allocator': (TestAllocator, ARGS_ONE, [DEBUG_OPT, make_option("--dir", dest="direction",