A callback is Qube's mechanism to allow custom execution of queuing logic depending upon the events which occur during the lifetime of a Qube job or upon pre-defined system events.
The use of callbacks can range from sending email when a job has completed, to designing complex dependency trees or direct integration with an asset tracking system.
When specifying a callback, Qube requires a little information in order to execute it properly. Each callback must include:
- The trigger expression to specify when the callback should be executed.
- The scripting language to use for the callback.
- The action or code the callback will execute each time the trigger condition is met
Callbacks In Detail:
Callbacks are defined as a list of one or more key/value pairs which is appended to the job's callback
list.
Python API Examples - refer to the above pages for more information
JobB waits for the entire jobA to complete
Using the "qube" callback language
Using the "python" callback language is identical to the first example, except the callback's "language" and "code" is different
Each frame in JobB waits for the its corresponding frame in jobA to complete
Using the "qube" callback language
Using the "python" callback language is identical to the first example, except the callback's "language" and "code" is different
JobC waits for jobA and jobB
This can be done using any of the callback languages, the only difference is the triggers value
Using the "python" callback language is identical to the first example, except the callback's "language" and "code" is different
JobD waits for either (jobA AND jobB) OR jobC
This is identical to the above example, except the 'triggerStr'" is different