Here are some common terms used in this documentation.
A node (function Ketrew.EDSL.workflow_node
) is the basic building block of
a workflow (it is often also called a “target”). A workflow-node has many
components:
Ketrew.EDSL.pbs
returns a datastructure
representing the action of running a program on a host with the PBS batch
scheduler. It is the parameter ?make
of Ketrew.EDSL.workflow_node
.Ketrew.EDSL.Host.t
) is a place where one can run things.
Usually a host is an SSH host with a “playground”, and a few other
options.Ketrew.EDSL.Program.t
) is a datastructure representing
shell scripts on steroids, Ketrew provides high-level combinators to build
programs.Ketrew.EDSL.Condition.t
) defines how to tell if a node
should be run or not (it is set by the “product” of the node or by the
argument ?done_when
of Ketrew.EDSL.workflow_node
).Ketrew.EDSL.depends_on
are nodes that need to be satisfied or run before a
node can start running,Ketrew.EDSL.on_failure_activate
are nodes that will be activated if the
node fails (being killed is considered failing here), andKetrew.EDSL.on_success_activate
are nodes that will be activated only
after a node succeeds.?metadata
is,
for now, just a raw string; the ?tags
are a list of strings which are
“searchable” (see “filters” in the UI).`Same_active_condition
:`None
(cf. Ketrew_pure.Target.Equivalence.t
).In the EDSL, a workflow-node has a product which defines, via its #is_done
method, how the condition of the node is tested. The product of a node can be
accessed through the #product
method.
Ketrew's engine is the process in charge of orchestrating and monitoring the run of the workflows.
The engine runs long-running processes through plugins (see documentation).