Files
toolbox/target/nextflow/yq/nextflow_schema.json
CI e3aee2f8b4 Build branch main with version main (7cec5ca)
Build pipeline: viash-hub.toolbox.main-g4l8f

Source commit: 7cec5cac69

Source message: Merge pull request #10 from viash-hub/bump_viash_to_0_9_0_rc_7

Bump viash to 0.9.0-RC7
2024-08-19 07:36:43 +00:00

165 lines
6.5 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema",
"title": "yq",
"description": "A portable YAML, JSON, XML, CSV, TOML and properties processor",
"type": "object",
"definitions": {
"inputs" : {
"title": "Inputs",
"type": "object",
"description": "No description",
"properties": {
"input": {
"type":
"string",
"description": "Type: `file`, required, example: `input.yaml`. files to be processed",
"help_text": "Type: `file`, required, example: `input.yaml`. files to be processed"
}
}
},
"outputs" : {
"title": "Outputs",
"type": "object",
"description": "No description",
"properties": {
"output": {
"type":
"string",
"description": "Type: `file`, required, default: `$id.$key.output.yaml`, example: `output.yaml`. output file",
"help_text": "Type: `file`, required, default: `$id.$key.output.yaml`, example: `output.yaml`. output file"
,
"default": "$id.$key.output.yaml"
}
}
},
"arguments" : {
"title": "Arguments",
"type": "object",
"description": "No description",
"properties": {
"eval": {
"type":
"string",
"description": "Type: `string`, required, example: `.name = \"foo\"`. expression to evaluate",
"help_text": "Type: `string`, required, example: `.name = \"foo\"`. expression to evaluate"
}
,
"indent": {
"type":
"integer",
"description": "Type: `integer`. sets indent level for output (default 2)",
"help_text": "Type: `integer`. sets indent level for output (default 2)"
}
,
"input_format": {
"type":
"string",
"description": "Type: `string`, choices: ``auto`, `a`, `yaml`, `y`, `json`, `j`, `props`, `p`, `csv`, `c`, `tsv`, `t`, `xml`, `x`, `base64`, `uri`, `toml`, `shell`, `s`, `lua`, `l``. parse format for input",
"help_text": "Type: `string`, choices: ``auto`, `a`, `yaml`, `y`, `json`, `j`, `props`, `p`, `csv`, `c`, `tsv`, `t`, `xml`, `x`, `base64`, `uri`, `toml`, `shell`, `s`, `lua`, `l``. parse format for input. (default \"auto\")",
"enum": ["auto", "a", "yaml", "y", "json", "j", "props", "p", "csv", "c", "tsv", "t", "xml", "x", "base64", "uri", "toml", "shell", "s", "lua", "l"]
}
,
"output_format": {
"type":
"string",
"description": "Type: `string`, choices: ``auto`, `a`, `yaml`, `y`, `json`, `j`, `props`, `p`, `csv`, `c`, `tsv`, `t`, `xml`, `x`, `base64`, `uri`, `toml`, `shell`, `s`, `lua`, `l``. output format type",
"help_text": "Type: `string`, choices: ``auto`, `a`, `yaml`, `y`, `json`, `j`, `props`, `p`, `csv`, `c`, `tsv`, `t`, `xml`, `x`, `base64`, `uri`, `toml`, `shell`, `s`, `lua`, `l``. output format type. (default \"auto\")",
"enum": ["auto", "a", "yaml", "y", "json", "j", "props", "p", "csv", "c", "tsv", "t", "xml", "x", "base64", "uri", "toml", "shell", "s", "lua", "l"]
}
,
"pretty_print": {
"type":
"boolean",
"description": "Type: `boolean_true`, default: `false`. pretty print, shorthand for \u0027",
"help_text": "Type: `boolean_true`, default: `false`. pretty print, shorthand for \u0027... style = \"\"\u0027"
,
"default": "False"
}
}
},
"nextflow input-output arguments" : {
"title": "Nextflow input-output arguments",
"type": "object",
"description": "Input/output parameters for Nextflow itself. Please note that both publishDir and publish_dir are supported but at least one has to be configured.",
"properties": {
"publish_dir": {
"type":
"string",
"description": "Type: `string`, required, example: `output/`. Path to an output directory",
"help_text": "Type: `string`, required, example: `output/`. Path to an output directory."
}
,
"param_list": {
"type":
"string",
"description": "Type: `string`, example: `my_params.yaml`. Allows inputting multiple parameter sets to initialise a Nextflow channel",
"help_text": "Type: `string`, example: `my_params.yaml`. Allows inputting multiple parameter sets to initialise a Nextflow channel. A `param_list` can either be a list of maps, a csv file, a json file, a yaml file, or simply a yaml blob.\n\n* A list of maps (as-is) where the keys of each map corresponds to the arguments of the pipeline. Example: in a `nextflow.config` file: `param_list: [ [\u0027id\u0027: \u0027foo\u0027, \u0027input\u0027: \u0027foo.txt\u0027], [\u0027id\u0027: \u0027bar\u0027, \u0027input\u0027: \u0027bar.txt\u0027] ]`.\n* A csv file should have column names which correspond to the different arguments of this pipeline. Example: `--param_list data.csv` with columns `id,input`.\n* A json or a yaml file should be a list of maps, each of which has keys corresponding to the arguments of the pipeline. Example: `--param_list data.json` with contents `[ {\u0027id\u0027: \u0027foo\u0027, \u0027input\u0027: \u0027foo.txt\u0027}, {\u0027id\u0027: \u0027bar\u0027, \u0027input\u0027: \u0027bar.txt\u0027} ]`.\n* A yaml blob can also be passed directly as a string. Example: `--param_list \"[ {\u0027id\u0027: \u0027foo\u0027, \u0027input\u0027: \u0027foo.txt\u0027}, {\u0027id\u0027: \u0027bar\u0027, \u0027input\u0027: \u0027bar.txt\u0027} ]\"`.\n\nWhen passing a csv, json or yaml file, relative path names are relativized to the location of the parameter file. No relativation is performed when `param_list` is a list of maps (as-is) or a yaml blob.",
"hidden": true
}
}
}
},
"allOf": [
{
"$ref": "#/definitions/inputs"
},
{
"$ref": "#/definitions/outputs"
},
{
"$ref": "#/definitions/arguments"
},
{
"$ref": "#/definitions/nextflow input-output arguments"
}
]
}