simtools-validate-repository-consistency#
Validate cross-file invariants in a simtools data repository.
- simtools.applications.validate_repository_consistency.validate_repository_consistency(repository, metadata_roots, workflow_root, require_git_tracking=False)[source]#
Return validation errors for one data repository.
Overview#
The application validates repository-wide invariants that cannot be checked by validating a
single file against a schema. It checks metadata product references, product identifier content,
workflow version uniqueness, and SKIP_WORKFLOW_CI reasons.
Use --require_git_tracking in a Git-backed data repository to require referenced products to be
tracked by Git.
Example#
Run from the repository root in CI:
simtools-validate-repository-consistency \
--repository . \
--metadata_roots input output \
--workflow_root input \
--require_git_tracking
The command fails if a metadata file references a missing or untracked product, or if two active workflows submit the same instrument, parameter, and parameter version.
Command line arguments#
options#
- –help
show this help message and exit
- –repository
Root directory of the data repository.
Default: ..
- –metadata_roots
Directories containing metadata and referenced products.
Default: (PosixPath(‘input’), PosixPath(‘output’)).
- –workflow_root
Directory containing workflow configuration files.
Default: input.
- –require_git_tracking
Require metadata and product files to be tracked by Git.
application#
- –show_options
Print available values for a supported option and exit.