From c9cda49b0af295a99bec7e966f9d667dc5e3706d Mon Sep 17 00:00:00 2001 From: Joshua Shapiro Date: Wed, 6 Mar 2024 17:13:21 -0500 Subject: [PATCH] Add docs about nextflow_schema.json --- CONTRIBUTING.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6f5ce9f6..be6a2033 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -20,11 +20,20 @@ To allow for efficient review, please include in any pull request a concise and When the changes in `development` merit a new release, a pull request will be filed to merge the current version of the `development` branch into `main`, followed by tagging a release on the `main` branch. +### Updating `nextflow_schema.json` + +Any changes that affect the Nextflow configuration files should be reflected in the `nextflow_schema.json` file. +This file can most easily be updated using the [`nf-core/tools` package](https://nf-co.re/tools), which can be installed with `conda install nf-core`. +Then run `nf-core schema build` in the `scpca-nf` directory to update the schema file to match the current config file. +You can also use the web editor that it launches to further customize the schema file. +Note that you may get warnings about any config parameters that include `${projectDir}`, as the build tool wants those to be replaced with absolute paths. +This is not necessary for the schema to be valid, so please keep those paths with the `${projectDir}` variable. + ### Continuous integration in pull requests There are several automatic checks performed by GitHub Actions in all pull requests filed to `main` or `development`: -- [Check Nextflow config](.github/workflows/nextflow-config-check.yaml): This workflow ensures that there are no syntax errors in the Nextflow configuration files. This check is required to pass before pull requests can be merged. +- [Check Nextflow config](.github/workflows/nextflow-config-check.yaml): This workflow ensures that there are no syntax errors in the Nextflow configuration files and that the `nextflow_schema.json` file is up to date. This check is required to pass before pull requests can be merged. - [Check Nextflow stub](.github/workflows/nextflow-stub-check.yaml): This workflow ensures that the [stub workflow](#stub-workflows) runs without errors. This check is required to pass before pull requests can be merged. - [Spell check R Markdown and Markdown files](.github/workflows/spell-check.yml): This workflow ensures there are no spelling errors in R Markdown and Markdown files. This check is not required to pass before pull requests can be merged.