-
Notifications
You must be signed in to change notification settings - Fork 5
Move custom schema documentation to pipeline-schema overview #1139
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from all commits
fe4beca
2cbbf8c
bdb7d33
0c8bdd1
cd372d6
cab3c65
381cf85
36c3ac4
9d34edc
7cf188f
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -11,6 +11,37 @@ You can populate the parameters in the pipeline by uploading a YAML or JSON file | |
|
|
||
| See [nf-core/rnaseq](https://github.com/nf-core/rnaseq/blob/e049f51f0214b2aef7624b9dd496a404a7c34d14/nextflow_schema.json) as an example of the pipeline parameters that can be represented by a JSON schema file. | ||
|
|
||
| ### Define pipeline schema | ||
|
|
||
| When adding or editing a pipeline, you can select one of three schema options to control parameter validation and the launch form: | ||
|
|
||
| 1. **Repository default**: Use the default schema provided by the Pipeline git repository. | ||
| 2. **Repository path**: Use a schema at a specific path in the repository. | ||
| 3. **Seqera Platform schema**: Use a Nextflow JSON schema stored in Seqera Platform (overrides repository). | ||
|
|
||
| The selected schema controls which pipeline parameters are exposed in the launch form. This allows you to restrict the parameters visible to launch users, simplifying the launch experience and preventing modification of parameters that should remain fixed. | ||
|
|
||
| #### Seqera Platform schema | ||
|
|
||
| Users with [Maintain or higher](../orgs-and-teams/roles.md) permissions can upload a custom `nextflow_schema.json` file directly to Seqera Platform. When you upload a Platform schema: | ||
|
|
||
| - The schema content is validated to ensure it's a valid JSON schema. | ||
| - The Platform schema controls which parameters appear in the pipeline launch form. | ||
| - Changes to the Platform schema trigger a new draft version of the pipeline. | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. TLDR; I think we can remove this line re triggering a version. Versioning isn't actually GA in cloud yet, although will be shortly. Regardless, I think the fact changes trigger a version sit better in the versioning docs. We don't reference what triggers a version across the rest of the pipeline docs, barring the versioning doc itself. That's also where we explain why schemas are important wrt versioning i.e. track_changes. |
||
| - The Platform schema is applied to all launches using that pipeline version. | ||
|
|
||
| To add or update a Seqera Platform schema: | ||
|
|
||
| 1. Navigate to **Add pipeline** or select **Edit** for an existing pipeline. | ||
| 2. Select **Seqera Platform schema** from the schema options. | ||
| 3. In the **Seqera Platform schema** field, paste your custom Nextflow schema JSON. | ||
| 4. The schema is validated automatically as you enter it. | ||
| 5. Select **Add** or **Save** to create a new draft version with the Platform schema. | ||
|
|
||
| :::note | ||
| The schema `id` field must be unique. If you're pasting pipeline schema contents from an existing pipeline schema file, update the `id` field to a unique value, or remove it. | ||
| ::: | ||
|
|
||
| ### Building pipeline schema files | ||
|
|
||
| The pipeline schema is based on [json-schema.org](https://json-schema.org/) syntax, with some additional conventions. While you can create your pipeline schema manually, we highly recommend using [nf-core tools](https://nf-co.re/tools/#pipeline-schema), a toolset for developing Nextflow pipelines built by the nf-core community. | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The is actually no name and we're not uploading files for the custom schemas at present, so
nextflow_schema.jsonis not quite right. We can just reference it as plain text as we have else where i.e...upload a custom Nextflow JSON schema directly to...