Tools and Workflows¶
Manage creation of tools and workflows using the Common Workflow Language (CWL).
Common Workflow language¶
Renku uses CWL to represent runnable steps (tools) along with their inputs and outputs. Similarly, tools can be chained together to form CWL-defined workflows.
Command-line tool¶
Represent a CommandLineTool
from the Common Workflow Language.
-
class
renku.models.cwl.command_line_tool.
CommandLineTool
(requirements=NOTHING, hints=NOTHING, label=None, doc=None, cwlVersion='v1.0', baseCommand='', arguments=NOTHING, stdin=None, stdout=None, stderr=None, inputs=NOTHING, outputs=NOTHING, successCodes=NOTHING, temporaryFailCodes=NOTHING, permanentFailCodes=NOTHING)[source]¶ Represent a command line tool.
-
STD_STREAMS_REPR
= {'stderr': '2>', 'stdin': '<', 'stdout': '>'}¶ Format streams for a shell command representation.
-
-
class
renku.models.cwl.command_line_tool.
CommandLineToolFactory
(command_line, directory='.', working_dir='.', stdin=None, stderr=None, stdout=None, successCodes=NOTHING)[source]¶ Command Line Tool Factory.
Parameter¶
Represent parameters from the Common Workflow Language.
-
class
renku.models.cwl.parameter.
CommandInputParameter
(id=None, streamable=None, type='string', description=None, default=None, inputBinding=None)[source]¶ An input parameter for a CommandLineTool.
-
class
renku.models.cwl.parameter.
CommandLineBinding
(position=None, prefix=None, separate: bool = True, itemSeparator=None, valueFrom=None, shellQuote: bool = True)[source]¶ Define the binding behavior when building the command line.
-
class
renku.models.cwl.parameter.
CommandOutputBinding
(glob=None)[source]¶ Define the binding behavior for outputs.
-
class
renku.models.cwl.parameter.
CommandOutputParameter
(id=None, streamable=None, type='string', description=None, format=None, outputBinding=None)[source]¶ Define an output parameter for a CommandLineTool.
-
class
renku.models.cwl.parameter.
InputParameter
(id=None, streamable=None, type='string', description=None, default=None, inputBinding=None)[source]¶ An input parameter.
-
class
renku.models.cwl.parameter.
OutputParameter
(id=None, streamable=None, type='string', description=None, format=None, outputBinding=None)[source]¶ An output parameter.
-
class
renku.models.cwl.parameter.
Parameter
(streamable=None)[source]¶ Define an input or output parameter to a process.
Process¶
Represent a Process
from the Common Workflow Language.
Types¶
Represent the Common Workflow Language types.
Workflow¶
Represent workflows from the Common Workflow Language.
-
class
renku.models.cwl.workflow.
Workflow
(inputs=NOTHING, requirements=NOTHING, hints=NOTHING, label=None, doc=None, cwlVersion='v1.0', outputs=NOTHING, steps=NOTHING)[source]¶ Define a workflow representation.
-
topological_steps
¶ Return topologically sorted steps.
-