server.web.schemas.workflow =========================== .. py:module:: server.web.schemas.workflow Classes ------- .. autoapisummary:: server.web.schemas.workflow.WorkflowValidationRequest server.web.schemas.workflow.WorkflowValidationResponse server.web.schemas.workflow.WorkflowTasksResponse server.web.schemas.workflow.WorkflowUserValidationResponse server.web.schemas.workflow.WorkflowResetRequest server.web.schemas.workflow.WorkflowRunForResetResponse server.web.schemas.workflow.WorkflowStatusResponse server.web.schemas.workflow.WorkflowStatusVizResponse server.web.schemas.workflow.WorkflowOverviewFilters server.web.schemas.workflow.WorkflowOverviewItem server.web.schemas.workflow.WorkflowOverviewResponse server.web.schemas.workflow.TaskTableItem server.web.schemas.workflow.TaskTableResponse server.web.schemas.workflow.WorkflowDetailsItem server.web.schemas.workflow.WorkflowDetailsResponse server.web.schemas.workflow.RequestedResourceClusterItem server.web.schemas.workflow.WorkflowRequestedResourcesResponse Module Contents --------------- .. py:class:: WorkflowValidationRequest Bases: :py:obj:`pydantic.BaseModel` Request model for workflow validation. .. py:attribute:: task_ids :type: List[int] .. py:class:: WorkflowValidationResponse Bases: :py:obj:`pydantic.BaseModel` Response model for workflow validation. .. py:attribute:: validation :type: bool .. py:attribute:: workflow_status :type: Optional[str] :value: None .. py:class:: WorkflowTasksResponse Bases: :py:obj:`pydantic.BaseModel` Response model for workflow tasks. .. py:attribute:: workflow_tasks :type: str .. py:class:: WorkflowUserValidationResponse Bases: :py:obj:`pydantic.BaseModel` Response model for workflow user validation. .. py:attribute:: validation :type: bool .. py:class:: WorkflowResetRequest Bases: :py:obj:`pydantic.BaseModel` Request model for workflow reset. .. py:attribute:: partial_reset :type: bool :value: False .. py:class:: WorkflowRunForResetResponse Bases: :py:obj:`pydantic.BaseModel` Response model for workflow run reset validation. .. py:attribute:: workflow_run_id :type: Optional[int] .. py:class:: WorkflowStatusResponse Bases: :py:obj:`pydantic.BaseModel` Response model for workflow status. .. py:attribute:: workflows :type: str .. py:class:: WorkflowStatusVizResponse Bases: :py:obj:`pydantic.BaseModel` Response model for workflow status visualization. .. py:class:: WorkflowOverviewFilters Bases: :py:obj:`pydantic.BaseModel` Filters for the workflow overview query. .. py:attribute:: model_config .. py:attribute:: user :type: Optional[str] :value: None .. py:attribute:: tool :type: Optional[str] :value: None .. py:attribute:: wf_name :type: Optional[str] :value: None .. py:attribute:: wf_args :type: Optional[str] :value: None .. py:attribute:: wf_id :type: Optional[str] :value: None .. py:attribute:: date_submitted :type: Optional[str] :value: None .. py:attribute:: date_submitted_end :type: Optional[str] :value: None .. py:attribute:: status :type: Optional[str] :value: None .. py:attribute:: user_exclude :type: Optional[str] :value: None .. py:attribute:: tool_exclude :type: Optional[str] :value: None .. py:attribute:: status_exclude :type: Optional[str] :value: None .. py:attribute:: wf_name_contains :type: bool :value: False .. py:attribute:: wf_args_contains :type: bool :value: False .. py:attribute:: wf_attributes :type: Optional[List[Tuple[str, str]]] :value: None .. py:attribute:: wf_attribute_key :type: Optional[str] :value: None .. py:attribute:: wf_attribute_value :type: Optional[str] :value: None .. py:class:: WorkflowOverviewItem Bases: :py:obj:`pydantic.BaseModel` Individual workflow item in overview response. .. py:attribute:: wf_id :type: int .. py:attribute:: wf_name :type: str .. py:attribute:: wf_submitted_date :type: str .. py:attribute:: wf_status_date :type: str .. py:attribute:: wf_args :type: Optional[str] .. py:attribute:: wfr_count :type: int .. py:attribute:: wf_status :type: str .. py:attribute:: wf_tool :type: str .. py:attribute:: PENDING :type: int :value: 0 .. py:attribute:: SCHEDULED :type: int :value: 0 .. py:attribute:: RUNNING :type: int :value: 0 .. py:attribute:: DONE :type: int :value: 0 .. py:attribute:: FATAL :type: int :value: 0 .. py:class:: WorkflowOverviewResponse Bases: :py:obj:`pydantic.BaseModel` Response model for workflow overview. .. py:attribute:: workflows :type: List[WorkflowOverviewItem] .. py:class:: TaskTableItem Bases: :py:obj:`pydantic.BaseModel` Individual task item in task table response. .. py:attribute:: task_id :type: int .. py:attribute:: task_name :type: str .. py:attribute:: task_status :type: str .. py:attribute:: task_command :type: str .. py:attribute:: task_num_attempts :type: int .. py:attribute:: task_status_date :type: str .. py:attribute:: task_max_attempts :type: int .. py:class:: TaskTableResponse Bases: :py:obj:`pydantic.BaseModel` Response model for task table visualization. .. py:attribute:: tasks :type: List[TaskTableItem] .. py:class:: WorkflowDetailsItem Bases: :py:obj:`pydantic.BaseModel` Workflow details item. .. py:attribute:: wf_name :type: str .. py:attribute:: wf_args :type: Optional[str] .. py:attribute:: wf_created_date :type: str .. py:attribute:: wf_status_date :type: str .. py:attribute:: tool_name :type: str .. py:attribute:: wf_status :type: str .. py:attribute:: wf_status_desc :type: str .. py:attribute:: wfr_jobmon_version :type: Optional[str] .. py:attribute:: wfr_heartbeat_date :type: Optional[str] .. py:attribute:: wfr_user :type: str .. py:attribute:: wfr_id :type: Optional[int] :value: None .. py:class:: WorkflowDetailsResponse Bases: :py:obj:`pydantic.BaseModel` Response model for workflow details. .. py:class:: RequestedResourceClusterItem Bases: :py:obj:`pydantic.BaseModel` One (task_template, task_resources_id) cluster of requested resources. Sourced from ``task_resources`` rows joined through ``task`` — so the cluster is visible as soon as the workflow has been bound, even before any TaskInstances have launched. ``requested_resources`` is the raw JSON blob the user configured; fields are intentionally unrestricted (``Dict[str, Any]``) because ``RequestedResourcesModel`` is only a hint — users can stuff arbitrary keys into compute_resources. .. py:attribute:: task_template_id :type: int .. py:attribute:: task_template_name :type: str .. py:attribute:: task_template_version_id :type: int .. py:attribute:: task_resources_id :type: int .. py:attribute:: queue_name :type: Optional[str] :value: None .. py:attribute:: num_tasks :type: int .. py:attribute:: requested_resources :type: Dict[str, Any] .. py:class:: WorkflowRequestedResourcesResponse Bases: :py:obj:`pydantic.BaseModel` Response for ``GET /workflow/{wfid}/requested_resources``. .. py:attribute:: clusters :type: List[RequestedResourceClusterItem]