Crate xvc_pipeline
source ·Expand description
Pipeline management commands and data structures
This contains CLI structs for xvc pipeline subcommands, init function to
run during xvc init for pipeline related initialization, cmd_pipeline
and handle_step_cli functions to dispatch the options to subcommands.
Modules
- Error and Result types for the pipelines crate
Structs
- Pipeline management commands
- Step creation, dependency, output commands
- A pipeline is a collection of steps that are run in a specific order. This struct defines the name of it.
- A pipeline run directory where the pipeline is run. It should be within the workspace to be portable across systems.
- Defines the user editable pipeline schema used in
xvc pipeline exportandxvc pipeline importcommands. - A step (stage) in a pipeline.
- Command to run for an XvcStep.
- User editable pipeline step schema used in
xvc pipeline exportandxvc pipeline importcommands.
Enums
- Pipeline management subcommands
- Step management subcommands
- Represents variety of dependencies Xvc supports. This is to unify all dependencies without dynamic dispatch and having compile time errors when we miss something about dependencies.
- Possible formats for recognized metrics formats. Metrics files are where the pipeline writes its output in a structured format. We can read these files and use them to generate reports
- Possible outputs for the pipeline.
- Parsable formats of a parameter file
Functions
- Entry point for
xvc pipeline dagcommand. Create a graph of the pipeline and output it in the specified format. - Entry point for
xvc pipeline deletecommand. It deletes the pipeline with the given name. It is not possible to delete the default pipeline. - Entry point for
xvc pipeline exportcommand. Export the pipeline and all its steps to a file. The file format is determined by theformatparameter. Iffileis None, prints to stdout. Ifnameis None, uses the default pipeline name from the config. Ifformatis None, uses the default format from [XvcSchemaSerializationFormat::default()] - Entry point for
xvc pipeline importcommand. Reads a pipeline definition in JSON or YAML formats and creates/updates it. Ifnameis None, uses the pipeline name from the file. Iffileis None, reads from stdin. Ifformatis None, uses the file extension to determine the format. Ifoverwriteis true, overwrites the pipeline if it already exists. - Entry point for
xvc pipeline listcommand. Lists all pipelines and their run directories. - Entry point for
xvc pipeline newcommand. It creates a new pipeline with the given name. Ifworkdiris None, uses the default workdir. - Run
xvc pipelinecommand. This is the entry point for the pipeline subcommand. It dispatches to the subcommands using PipelineCLI argument. - Entry point for
xvc pipeline runcommand. - Creates a new step
- Entry point for
xvc pipeline step outputcommand. - Entry point for
xvc pipeline step showcommand. - Entry point for
xvc pipeline step updatecommand. Updates the command and invalidation strategy (whento run) of the given step. - Entry point for
xvc pipeline updatecommand. Can rename the pipeline, change the working directory or set the pipeline as default. - Dispatch
xvc pipeline stepsubcommands. - Initialize pipeline stores and save them.