As an administrator of IRIDA Next I would like to be able to provide my own sets of options for pipeline parameters when I register a pipeline in the system. Specifically I would like to be able to provide a set of database options which would render a select dropdown for a specified database option with a name (visible to the user) and a path which is passed to the pipeline. This would ensure that my Users would be able to launch a pipeline with a given database without having knowledge of our database store. These parameter overrides could be set for a specific version of a pipeline or for any version of the same pipeline.
Summary
Update pipeline json config at config/pipelines/pipelines.json to support overriding parameters in version config or in pipeline entry.
[
{
"url": "https://github.com/phac-nml/iridanextexample",
"name": "phac-nml/iridanextexample",
"description": "IRIDA Next Example Pipeline",
"parameter_overrides": {
"database": {
"description": { # can be left for later
"en": "Englush fdescpt",
"fr": "Francais safd"
},
"default": "DBNAME",
"enum": [
{"DBNAME": "PATH_TO_DB"}
]
}
},
"versions": [
{
"name": "1.0.2",
"parameter_overrides": {
"database": {
"default": "DBNAME",
"enum": [
{"DBNAME": "PATH_TO_DB"}
]
}
},
},
],
},
]
Update lib/irida/pipelines.rb to parse the section for the pipeline in register_pipelines to parse parameter_overrides and merge global if present with version specific parameter_overrides
Update lib/irida/pipeline.rb to include parameter_overrides attr and method to access it
Update NextflowComponent to check parameter_overrides and if present modify parameter for display
Problem
As an administrator of IRIDA Next I would like to be able to provide my own sets of options for pipeline parameters when I register a pipeline in the system. Specifically I would like to be able to provide a set of database options which would render a select dropdown for a specified database option with a name (visible to the user) and a path which is passed to the pipeline. This would ensure that my Users would be able to launch a pipeline with a given database without having knowledge of our database store. These parameter overrides could be set for a specific version of a pipeline or for any version of the same pipeline.
Summary
config/pipelines/pipelines.json
to support overriding parameters inversion
config or in pipeline entry.lib/irida/pipelines.rb
to parse the section for the pipeline inregister_pipelines
to parseparameter_overrides
and merge global if present with version specificparameter_overrides
lib/irida/pipeline.rb
to includeparameter_overrides
attr and method to access itNextflowComponent
to checkparameter_overrides
and if present modify parameter for display