How Tangle pipelines, components, and tasks work
masterTangle orchestrates containerized command-line programs using a graph-based model:
- Component: A description of a containerized command-line program. It includes a
ComponentSpec/component.yamldefining its signature (inputs/outputs), metadata, and implementation (container image, program to start, and how to map inputs/outputs to CLI arguments). Components can be written in any language (Python, Shell, R, etc.). - Task: An instance of a component with specific input arguments. Tasks are connected by linking the output of one task to the input of another.
- Pipeline: A graph of interconnected tasks. When a pipeline is submitted for execution, Tangle runs the tasks (in parallel where possible) and manages the transfer of output artifacts between them.
This architecture is compatible with Google Cloud Vertex AI Pipelines and Kubeflow Pipelines.