Skip to content

Task Planning Config

TOML Example (Click to Expand)
# Ad-hoc example tasks under one handoff

handoff_id = "handoff_id2"

[[tasks]]
  id = "trans_x" # *required* can be any tag, must be unique. if not unique PIPES will make unique. PIPES replaces spaces with '_'
  type = "Transformation" # *required* type to refer to this task
  description = "This is a short description of trans_x."
  key = "scenario" # *required* DO NOT MODIFY
  from_value = "demand_moderate" # *required* DO NOT MODIFY
  to_value = "earlynobio_moderate" # *required* DO NOT MODIFY
  inputs = [ "",] # what handoff datasets this transformation applies to, if empty applies to all handoff datasets going to 'to_model'.
  assignee = "jgu2" # *required* who (assignee's username) will be responsible for performing this task.

[[tasks]]
  id = "check_x"    # *required* name to refer to this task, must be unique otherwise PIPES will append integers, spaces are converted to '_'
  type = "QAQC"     # *required* type to refer to this task
  description = ""          # *required*
  inputs = ["",]                #
  notes = [""]          # optional
  scheduled_start = ""  # optional, by default this is scheduled according to model run and handoff schedules
  scheduled_end   = ""  # optional, by default this is scheduled according to model run and handoff schedules
  assignee = "jgu2" # *required* who (assignee's username) will be responsible for performing this task.

  [[tasks.acceptance_criteria]] # custom user key/value TOML pairs (possibly nested) to describe what needs to be done with qaqc, we provide some examples below
    bounds = []
    columns = [""] # columns to check
    units = "" # check that units

[[tasks]]
  id = "vis_x"
  type = "Visualization" # *required* type to refer to this task
  description = ""
  inputs = ["",]
  notes = [""]
  scheduled_start = "" # optional, by default this is scheduled according to model run and handoff schedules
  scheduled_end   = "" # optional, by default this is scheduled according to model run and handoff schedules
  assignee = "testuser" # *required* who (assignee's username) will be responsible for performing this task.

  [[tasks.parameters]] # custom user key/value TOML pairs (possibly nested) to describe what needs to be done with vis, we provide some examples below
    type = "line"  #
    columns = []   #
    colors = []

Schema Definition

schemas

TaskCreate

Task creation schema.

Attributes:

Name Type Description
name str

Task name, must be unique to this model run.

type str

Task type, like QAQC, Transformation, or Visualization.

description str

Description of task process.

assignee UserCreate | EmailStr | None

The user who conducts this task.

status ExecutionStatus

The task status - PENDING, RUNNING, SUCCESS, or FAILURE.

subtasks list[SubTask]

List of actions under this task.

scheduled_start datetime | None

Scheduled start date.

scheduled_end datetime | None

Scheduled end date.

completion_date datetime | None

Task completion date.

source_code SourceCode | None

Scripts used to perform the task process.

input_datasets list[str]

List of datasets that the task applies to.

input_parameters dict

Non-dataset inputs, i.e. parameters in dictionary.

output_datasets list[str]

List of datasets produced from this task.

output_values dict

Non-dataset outputs, i.e. values in dictionary.

logs str

Task log location.

notes str

Notes and additional information.

Fields:

assignee

The user who conducts this task

completion_date

task completion date

description

description of task process

input_datasets

List of datasets that the task applies to.

input_parameters

Non-dataset inputs, i.e. parameters in dictionary

logs

task log location

name

task name, must be unique to this model run.

notes

notes and additional information

output_datasets

List of datasets produced from this task

output_values

non-dataset outputs, i.e. values in dictionary

scheduled_end

scheduled end date

scheduled_start

scheduled start date

source_code

Scripts used to perform the task process

status

The task status - PENDING, RUNNING, SUCCESS, or FAILURE

subtasks

List of actions under this task

type

task type, like be QAQC, Transformation, or Visualization