tasks
The tasks config group cares about the task selection available to the scheduler. For each task listed the scheduler
automatically holds a TaskStruct that can be interacted with to load
the task as well as attach / retrieve other artifacts.
Next to the base list of tasks there are two important concepts:
the
pivottask is a “highlighted” task, some schedulers behave differently depending whether a pivot is provided or specifically require onethe
tagmechanism allows task modifications (see also themml-tagsPlugins) - keep in mind that for the majority of cases tagged (and multi-tagged) tasks are treated completely independent
Note that the tasks config entries
live “top level”, which means although you select a config file via tasks=fake, the modification of entries has no
tasks prepended (aka. ´´pivot.name=MY_TASK``). Having a large pool of tasks is prone for typos during CLI
interaction which can be resolved either via creating a config file (you may use _template.yaml as a basis) or
using the MMLJobDescription jointly with a
JobRunner.
none
By default no tasks are given.
- task_list
- default: []
the task list determines which
TaskStructare available in the schedulermust be provided straight as “task_list=[task_1,task_2,…]” -> do NOT call “tasks.task_list=…”
- pivot
- name
- default: False
the pivot task is a special highlighted task
it will be added to the list of available tasks automatically
must be provided straight as “pivot.name=task_1” -> do NOT call “tasks.pivot.name=…”
- tags
- default: ‘’
allows to attach (multiple) tags to the pivot task
use as ‘+TAG_1?PAR_1?PAR_2+TAG_2+TAG_3?PAR_3’ (+ separates tags and ? allows to provide parameters to tags)
will be attached to the pivot task automatically
must be provided straight as “pivot.tags=+tag_1+tag_2” -> do NOT call “tasks.pivot.tags=…”
- tagging
- all
- default: ‘’
convenience methods for tagging all tasks at once
usage is identical to pivot.tags
if a pivot task is provided make sure to have adapted pivot.name or pivot.tags identical
must be provided straight as “tagging.all=+tag_1+tag_2” -> do NOT call “tasks.tagging.all=…”
- variants
- default: []
creates variants for all tasks, so multiple differently tagged versions of each task
will result in n_tasks * n_tags tasks to be present
use ‘+identity’ to keep an unmodified variant
must be provided straight as “tagging.variants=[+tag_1,+tag_2]” -> do NOT call “tasks.tagging.variants=…”
fake
This config points to the fake_task and is intended for debugging and testing.
- task_list
- default: []
the task list determines which
TaskStructare available in the schedulermust be provided straight as “task_list=[task_1,task_2,…]” -> do NOT call “tasks.task_list=…”
- pivot
- name
- default: ‘mml_fake_task’
the pivot task is a special highlighted task
the mml_fake_task is a dummy classification task for testing purposes
it will be added to the list of available tasks automatically
must be provided straight as “pivot.name=task_1” -> do NOT call “tasks.pivot.name=…”
- tags
- default: ‘’
allows to attach (multiple) tags to the pivot task
use as ‘+TAG_1?PAR_1?PAR_2+TAG_2+TAG_3?PAR_3’ (+ separates tags and ? allows to provide parameters to tags)
will be attached to the pivot task automatically
must be provided straight as “pivot.tags=+tag_1+tag_2” -> do NOT call “tasks.pivot.tags=…”
- tagging
- all
- default: ‘’
convenience methods for tagging all tasks at once
usage is identical to pivot.tags
if a pivot task is provided make sure to have adapted pivot.name or pivot.tags identical
must be provided straight as “tagging.all=+tag_1+tag_2” -> do NOT call “tasks.tagging.all=…”
- variants
- default: []
creates variants for all tasks, so multiple differently tagged versions of each task
will result in n_tasks * n_tags tasks to be present
use ‘+identity’ to keep an unmodified variant
must be provided straight as “tagging.variants=[+tag_1,+tag_2]” -> do NOT call “tasks.tagging.variants=…”