Skip to content
CLI reference

CLI reference

valet validate -p PIPELINE [-i URI] [-o URI] [options]
valet plan     -p PIPELINE [-i URI] [options]
valet schema   -p PIPELINE [-i URI] [options]
valet --help | --version
CommandDoes
validateValidates the data. Prints a JSON summary to stdout; with -o, also publishes artifacts and a manifest
planDescribes schemas, passes and state without validating. --format pipeline prints an input.schema block inferred from the data
schemaChecks Parquet footer and schema compatibility without reading rows. See schema-only checks

CLI values override the pipeline file, which overrides defaults. Logs and diagnostics go to stderr.

Flags

Each command accepts only its own flags.

FlagValuevalidateplanschema
-p, --pipelineLocal .yaml, .yml or .json file (required)✓✓✓
-i, --inputFile or s3:// object; replaces the configured source. Not stdin✓✓✓
-o, --outputDirectory or s3:// prefix for artifacts✓✓
--memory-budgetSize, e.g. 512MiB (default 512MiB)✓✓✓
--batch-targetSize, e.g. 8MiB✓✓
--workersNumber of validation workers (default 1)✓✓
--output-modeall, failures or report. Default report without -o, all with it✓✓
--parquet-statsoff (default) or trusted✓✓
--formatplan: json (default) or pipeline; schema: json (default) or text✓✓
--plainPrint the summary as key=value lines✓
--statsInclude per-rule failure counts and configured statistics✓
--json-outputAlso write the summary JSON to a path; - selects JSON on stdout✓
-v, --verboseDebug logging, same as --log-level debug✓✓✓
--log-leveldebug, info (default), warn or error✓✓✓
--log-formattext (default) or json✓✓✓

-h/--help and --version work without reading any storage.

Flag errors

Flag errors exit 2 before any input is read.

InputMessage
schema -p p.yml -o out-o is not a schema option; schema accepts --pipeline, --input, --format, …
validate --bogusunknown flag --bogus; see valet --help
--output-mode some--output-mode must be all, failures or report, not "some"
--workers many--workers must be a number, not "many"
-i ---input - (stdin) is unsupported: inputs must be replayable files or s3:// objects
-v --log-level info--verbose selects debug logging and conflicts with --log-level info
--plain --json-output ---plain conflicts with --json-output -

Exit codes

CodeMeaning
0Passed; warnings allowed
1Validation or schema failure
2Configuration, input, I/O or resource failure before anything was committed
3The result was committed, but printing it failed
130Interrupted with Ctrl-C (SIGINT); no result committed
143Terminated (SIGTERM), e.g. by a CI timeout or kill; no result committed

130 and 143 follow the shell convention of 128 + signal number. See signals and cancellation for what is cleaned up.