nomad_client_rs/models/
task.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Clone, Debug, Default, PartialEq, Serialize, Deserialize)]
4pub struct Task {
5 #[serde(rename = "Affinities", skip_serializing_if = "Option::is_none")]
6 pub affinities: Option<Vec<crate::models::Affinity>>,
7 #[serde(rename = "Artifacts", skip_serializing_if = "Option::is_none")]
8 pub artifacts: Option<Vec<crate::models::TaskArtifact>>,
9 #[serde(rename = "CSIPluginConfig", skip_serializing_if = "Option::is_none")]
10 pub csi_plugin_config: Option<crate::models::TaskCsiPluginConfig>,
11 #[serde(rename = "Config", skip_serializing_if = "Option::is_none")]
12 pub config: Option<::std::collections::HashMap<String, serde_json::Value>>,
13 #[serde(rename = "Constraints", skip_serializing_if = "Option::is_none")]
14 pub constraints: Option<Vec<crate::models::Constraint>>,
15 #[serde(rename = "DispatchPayload", skip_serializing_if = "Option::is_none")]
16 pub dispatch_payload: Option<crate::models::DispatchPayloadConfig>,
17 #[serde(rename = "Driver", skip_serializing_if = "Option::is_none")]
18 pub driver: Option<String>,
19 #[serde(rename = "Env", skip_serializing_if = "Option::is_none")]
20 pub env: Option<::std::collections::HashMap<String, String>>,
21 #[serde(rename = "KillSignal", skip_serializing_if = "Option::is_none")]
22 pub kill_signal: Option<String>,
23 #[serde(rename = "KillTimeout", skip_serializing_if = "Option::is_none")]
24 pub kill_timeout: Option<i64>,
25 #[serde(rename = "Kind", skip_serializing_if = "Option::is_none")]
26 pub kind: Option<String>,
27 #[serde(rename = "Leader", skip_serializing_if = "Option::is_none")]
28 pub leader: Option<bool>,
29 #[serde(rename = "Lifecycle", skip_serializing_if = "Option::is_none")]
30 pub lifecycle: Option<crate::models::TaskLifecycle>,
31 #[serde(rename = "LogConfig", skip_serializing_if = "Option::is_none")]
32 pub log_config: Option<crate::models::LogConfig>,
33 #[serde(rename = "Meta", skip_serializing_if = "Option::is_none")]
34 pub meta: Option<::std::collections::HashMap<String, String>>,
35 #[serde(rename = "Name", skip_serializing_if = "Option::is_none")]
36 pub name: Option<String>,
37 #[serde(rename = "Resources", skip_serializing_if = "Option::is_none")]
38 pub resources: Option<crate::models::Resources>,
39 #[serde(rename = "RestartPolicy", skip_serializing_if = "Option::is_none")]
40 pub restart_policy: Option<crate::models::RestartPolicy>,
41 #[serde(rename = "ScalingPolicies", skip_serializing_if = "Option::is_none")]
42 pub scaling_policies: Option<Vec<crate::models::ScalingPolicy>>,
43 #[serde(rename = "Services", skip_serializing_if = "Option::is_none")]
44 pub services: Option<Vec<crate::models::Service>>,
45 #[serde(rename = "ShutdownDelay", skip_serializing_if = "Option::is_none")]
46 pub shutdown_delay: Option<i64>,
47 #[serde(rename = "Templates", skip_serializing_if = "Option::is_none")]
48 pub templates: Option<Vec<crate::models::Template>>,
49 #[serde(rename = "User", skip_serializing_if = "Option::is_none")]
50 pub user: Option<String>,
51 #[serde(rename = "Vault", skip_serializing_if = "Option::is_none")]
52 pub vault: Option<crate::models::Vault>,
53 #[serde(rename = "VolumeMounts", skip_serializing_if = "Option::is_none")]
54 pub volume_mounts: Option<Vec<crate::models::VolumeMount>>,
55}