nomad_client_rs/models/
task.rs

1use 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}