windmill_api/models/
queued_job.rs

1/*
2 * Windmill API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: 1.512.0
7 * Contact: contact@windmill.dev
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct QueuedJob {
16    #[serde(rename = "workspace_id", skip_serializing_if = "Option::is_none")]
17    pub workspace_id: Option<String>,
18    #[serde(rename = "id")]
19    pub id: uuid::Uuid,
20    #[serde(rename = "parent_job", skip_serializing_if = "Option::is_none")]
21    pub parent_job: Option<uuid::Uuid>,
22    #[serde(rename = "created_by", skip_serializing_if = "Option::is_none")]
23    pub created_by: Option<String>,
24    #[serde(rename = "created_at", skip_serializing_if = "Option::is_none")]
25    pub created_at: Option<String>,
26    #[serde(rename = "started_at", skip_serializing_if = "Option::is_none")]
27    pub started_at: Option<String>,
28    #[serde(rename = "scheduled_for", skip_serializing_if = "Option::is_none")]
29    pub scheduled_for: Option<String>,
30    #[serde(rename = "running")]
31    pub running: bool,
32    #[serde(rename = "script_path", skip_serializing_if = "Option::is_none")]
33    pub script_path: Option<String>,
34    #[serde(rename = "script_hash", skip_serializing_if = "Option::is_none")]
35    pub script_hash: Option<String>,
36    #[serde(rename = "args", skip_serializing_if = "Option::is_none")]
37    pub args: Option<std::collections::HashMap<String, serde_json::Value>>,
38    #[serde(rename = "logs", skip_serializing_if = "Option::is_none")]
39    pub logs: Option<String>,
40    #[serde(rename = "raw_code", skip_serializing_if = "Option::is_none")]
41    pub raw_code: Option<String>,
42    #[serde(rename = "canceled")]
43    pub canceled: bool,
44    #[serde(rename = "canceled_by", skip_serializing_if = "Option::is_none")]
45    pub canceled_by: Option<String>,
46    #[serde(rename = "canceled_reason", skip_serializing_if = "Option::is_none")]
47    pub canceled_reason: Option<String>,
48    #[serde(rename = "last_ping", skip_serializing_if = "Option::is_none")]
49    pub last_ping: Option<String>,
50    #[serde(rename = "job_kind")]
51    pub job_kind: JobKind,
52    #[serde(rename = "schedule_path", skip_serializing_if = "Option::is_none")]
53    pub schedule_path: Option<String>,
54    /// The user (u/userfoo) or group (g/groupfoo) whom the execution of this script will be permissioned_as and by extension its DT_TOKEN. 
55    #[serde(rename = "permissioned_as")]
56    pub permissioned_as: String,
57    #[serde(rename = "flow_status", skip_serializing_if = "Option::is_none")]
58    pub flow_status: Option<Box<models::FlowStatus>>,
59    #[serde(rename = "workflow_as_code_status", skip_serializing_if = "Option::is_none")]
60    pub workflow_as_code_status: Option<Box<models::WorkflowStatus>>,
61    #[serde(rename = "raw_flow", skip_serializing_if = "Option::is_none")]
62    pub raw_flow: Option<Box<models::FlowValue>>,
63    #[serde(rename = "is_flow_step")]
64    pub is_flow_step: bool,
65    #[serde(rename = "language", skip_serializing_if = "Option::is_none")]
66    pub language: Option<models::ScriptLang>,
67    #[serde(rename = "email")]
68    pub email: String,
69    #[serde(rename = "visible_to_owner")]
70    pub visible_to_owner: bool,
71    #[serde(rename = "mem_peak", skip_serializing_if = "Option::is_none")]
72    pub mem_peak: Option<i32>,
73    #[serde(rename = "tag")]
74    pub tag: String,
75    #[serde(rename = "priority", skip_serializing_if = "Option::is_none")]
76    pub priority: Option<i32>,
77    #[serde(rename = "self_wait_time_ms", skip_serializing_if = "Option::is_none")]
78    pub self_wait_time_ms: Option<f64>,
79    #[serde(rename = "aggregate_wait_time_ms", skip_serializing_if = "Option::is_none")]
80    pub aggregate_wait_time_ms: Option<f64>,
81    #[serde(rename = "suspend", skip_serializing_if = "Option::is_none")]
82    pub suspend: Option<f64>,
83    #[serde(rename = "preprocessed", skip_serializing_if = "Option::is_none")]
84    pub preprocessed: Option<bool>,
85    #[serde(rename = "worker", skip_serializing_if = "Option::is_none")]
86    pub worker: Option<String>,
87}
88
89impl QueuedJob {
90    pub fn new(id: uuid::Uuid, running: bool, canceled: bool, job_kind: JobKind, permissioned_as: String, is_flow_step: bool, email: String, visible_to_owner: bool, tag: String) -> QueuedJob {
91        QueuedJob {
92            workspace_id: None,
93            id,
94            parent_job: None,
95            created_by: None,
96            created_at: None,
97            started_at: None,
98            scheduled_for: None,
99            running,
100            script_path: None,
101            script_hash: None,
102            args: None,
103            logs: None,
104            raw_code: None,
105            canceled,
106            canceled_by: None,
107            canceled_reason: None,
108            last_ping: None,
109            job_kind,
110            schedule_path: None,
111            permissioned_as,
112            flow_status: None,
113            workflow_as_code_status: None,
114            raw_flow: None,
115            is_flow_step,
116            language: None,
117            email,
118            visible_to_owner,
119            mem_peak: None,
120            tag,
121            priority: None,
122            self_wait_time_ms: None,
123            aggregate_wait_time_ms: None,
124            suspend: None,
125            preprocessed: None,
126            worker: None,
127        }
128    }
129}
130/// 
131#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
132pub enum JobKind {
133    #[serde(rename = "script")]
134    Script,
135    #[serde(rename = "preview")]
136    Preview,
137    #[serde(rename = "dependencies")]
138    Dependencies,
139    #[serde(rename = "flowdependencies")]
140    Flowdependencies,
141    #[serde(rename = "appdependencies")]
142    Appdependencies,
143    #[serde(rename = "flow")]
144    Flow,
145    #[serde(rename = "flowpreview")]
146    Flowpreview,
147    #[serde(rename = "script_hub")]
148    ScriptHub,
149    #[serde(rename = "identity")]
150    Identity,
151    #[serde(rename = "deploymentcallback")]
152    Deploymentcallback,
153    #[serde(rename = "singlescriptflow")]
154    Singlescriptflow,
155    #[serde(rename = "flowscript")]
156    Flowscript,
157    #[serde(rename = "flownode")]
158    Flownode,
159    #[serde(rename = "appscript")]
160    Appscript,
161}
162
163impl Default for JobKind {
164    fn default() -> JobKind {
165        Self::Script
166    }
167}
168