new ExecutorClient(parameters)
Client for creating, monitoring, and receiving output executor jobs. This client is used by the Executor Workers and some of the API calls are not meant to be used by "end users".
Parameters:
Name | Type | Description | ||||||
---|---|---|---|---|---|---|---|---|
parameters |
object |
Properties
|
Methods
-
createJob(jobInfo [, callback])
-
Creates a new job.
Parameters:
Name Type Argument Description jobInfo
object initial information about the job must contain the hash.
Properties
Name Type Description hash
object a unique id for the job (e.g. the hash of the artifact containing the executor_config.json).
callback
function <optional>
if provided no promise will be returned.
Returns:
On success the promise will be resolved with JobInfo result.
On error the promise will be rejected with Error error.- Type
- external:Promise
-
getInfo(hash [, callback])
-
Retrieves the current state of the job in form of a JobInfo
Parameters:
Name Type Argument Description hash
string unique id for the job (e.g. the hash of the artifact containing the executor_config.json).
callback
function <optional>
if provided no promise will be returned.
Returns:
On success the promise will be resolved with JobInfo jobInfo.
On error the promise will be rejected with Error error.- Type
- external:Promise
-
getNewExecutorConfig(cmd [, args] [, outputInterval] [, outputSegmentSize])
-
Creates a new configuration object for the job execution.
To make the worker post output either the outputInterval and/or outputSegmentSize must be specified.
- If both are negative (or falsy) no output will be given.
- When both are specified a timeout will be set at start (and after each posted output). If the number of lines exceeds outputSegmentSize during that timeout, the output will be posted and a new timeout will be triggered.
N.B. even though a short outputInterval is set, the worker won't post new output until the responses from previous posts have returned. Before the job returns with a "completed" status code, all queued outputs will be posted (and the responses will be ensured to have returned).Parameters:
Name Type Argument Default Description cmd
string command to execute.
args
Array.<string> <optional>
command arguments.
outputInterval
number <optional>
-1 max time [ms] between (non-empty) output posts from worker.
outputSegmentSize
number <optional>
-1 number of lines before new output is posted from worker. (N.B. posted segments can still contain more number of lines).
Returns:
- Type
- object
-
getOutput(hash [, start] [, end] [, callback])
-
Retrieves the output associated with jobHash, to limit the output pass start and/or end. The outputs are identified by 0, 1, 2, ...
Parameters:
Name Type Argument Description hash
string hash of job related to output.
start
number <optional>
number/id of the output segment to start from (inclusive).
end
number <optional>
number/id of segment to end at (exclusive).
callback
function <optional>
if provided no promise will be returned.
Returns:
On success the promise will be resolved with OutputInfo result.
On error the promise will be rejected with Error error.- Type
- external:Promise