Skip to content

Define a schema for workflow config files #46

Description

@victorlin

Note

This is different from standardizing the schema itself across pathogen repos.

This has been mentioned at least a few times and it would be good to start exploring how to do this.

In nextstrain/pathogen-repo-guide#74:

We’ve played with JSON schemas (for the config) and auto-generating HTML docs from this. That effort wasn’t successful enough to merge but I think this will be where we eventually end up.

In nextstrain/WNV#105 (comment):

Use a JSON Schema for the config to figure out what to resolve automatically and then do so. This lets the code be shared while each pathogen gets path resolution "for free" by adding a config schema. We want schemas for our configs anyway. Why not use this as another carrot and reduce copying at the same time?

In nextstrain/rsv#106 (comment):

Maybe this is another +1 for defining a config schema, which could be a basis for documentation that tells users to use custom_subsample instead of subsample.

Options to explore

  • JSON Schema
  • Snakemake's built-in validation
  • Augur's built-in validation
  • Surface schema to users
    • Generate docs page?
    • Use $schema keyword for better editing experience in our default configs? User configs?

Progress

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions