diff --git a/docs/source/process_data/version_pipelines.md b/docs/source/process_data/version_pipelines.md index 5b207d9..5899d35 100644 --- a/docs/source/process_data/version_pipelines.md +++ b/docs/source/process_data/version_pipelines.md @@ -11,10 +11,13 @@ Core data processing pipelines MUST adopt [semantic versioning](https://semver.o The pipeline's name and semantic version MUST be stored in aind-data-schema [Processing](https://github.com/AllenNeuralDynamics/aind-data-schema/blob/dev/src/aind_data_schema/core/processing.py#L970) metadata at the top level of the results. -The pipeline's name and semantic version MUST be stored in the pipeline repository and easily accessible to pipeline code. We recommend a `.env` file containing `PIPELINE_VERSION`, `PIPELINE_NAME`, and `PIPELINE_URL` variables. These environment variables can be pulled using standard tools such as `os` and added to the `aind-data-schema` `Processing` core object for proper documentation. Specifically, the following fields of the `Processing` object should be populated with these enironment variables: +The pipeline's name and semantic version MUST be stored in the pipeline repository and easily accessible to pipeline code. We recommend a `.env` file containing `PIPELINE_VERSION`, `PIPELINE_NAME`, and `PIPELINE_URL` variables. These environment variables can be pulled using standard tools such as `os` and added to the `aind-data-schema` `Processing` core object for proper documentation. Specifically, the following fields of the `Processing` object should be populated with these environment variables: -`Processing.pipeline_version=os.getenv("PIPELINE_VERSION", "No version reported.")` +`Processing.pipeline_version=os.getenv("PIPELINE_VERSION", "No pipeline version reported.")` `Processing.pipeline_url=os.getenv("PIPELINE_URL", "No pipeline URL reported.")` +`Processing.pipeline_name=os.getenv("PIPELINE_NAME", "No pipeline name reported.")` + +> **Note:** [`aind-metadata-manager>=0.1.3`](https://github.com/AllenNeuralDynamics/aind-metadata-manager) enforces that all three pipeline fields are provided — either via CLI arguments or environment variables. If a value is missing, the pipeline will fail with a clear error message rather than falling back to a placeholder default. The pipeline repository and the repositories of all individual capsules MUST be public on GitHub.