#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
pub struct Task {
#[serde(rename = "Name", skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Driver", skip_serializing_if = "Option::is_none")]
pub driver: Option<String>,
#[serde(rename = "User", skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
#[serde(rename = "Lifecycle", skip_serializing_if = "Option::is_none")]
pub lifecycle: Option<Box<crate::models::TaskLifecycle>>,
#[serde(rename = "Config", skip_serializing_if = "Option::is_none")]
pub config: Option<::std::collections::HashMap<String, serde_json::Value>>,
#[serde(rename = "Constraints", skip_serializing_if = "Option::is_none")]
pub constraints: Option<Vec<crate::models::Constraint>>,
#[serde(rename = "Affinities", skip_serializing_if = "Option::is_none")]
pub affinities: Option<Vec<crate::models::Affinity>>,
#[serde(rename = "Env", skip_serializing_if = "Option::is_none")]
pub env: Option<::std::collections::HashMap<String, String>>,
#[serde(rename = "Services", skip_serializing_if = "Option::is_none")]
pub services: Option<Vec<crate::models::Service>>,
#[serde(rename = "Resources", skip_serializing_if = "Option::is_none")]
pub resources: Option<Box<crate::models::Resources>>,
#[serde(rename = "Meta", skip_serializing_if = "Option::is_none")]
pub meta: Option<::std::collections::HashMap<String, String>>,
#[serde(rename = "KillTimeout", skip_serializing_if = "Option::is_none")]
pub kill_timeout: Option<i64>,
#[serde(rename = "LogConfig", skip_serializing_if = "Option::is_none")]
pub log_config: Option<Box<crate::models::LogConfig>>,
#[serde(rename = "Artifacts", skip_serializing_if = "Option::is_none")]
pub artifacts: Option<Vec<crate::models::TaskArtifact>>,
#[serde(rename = "Vault", skip_serializing_if = "Option::is_none")]
pub vault: Option<Box<crate::models::Vault>>,
#[serde(rename = "Templates", skip_serializing_if = "Option::is_none")]
pub templates: Option<Vec<crate::models::Template>>,
#[serde(rename = "DispatchPayload", skip_serializing_if = "Option::is_none")]
pub dispatch_payload: Option<Box<crate::models::DispatchPayloadConfig>>,
#[serde(rename = "VolumeMounts", skip_serializing_if = "Option::is_none")]
pub volume_mounts: Option<Vec<crate::models::VolumeMount>>,
#[serde(rename = "Csi_plugin", skip_serializing_if = "Option::is_none")]
pub csi_plugin: Option<Box<crate::models::TaskCsiPluginConfig>>,
#[serde(rename = "Leader", skip_serializing_if = "Option::is_none")]
pub leader: Option<bool>,
#[serde(rename = "ShutdownDelay", skip_serializing_if = "Option::is_none")]
pub shutdown_delay: Option<i64>,
#[serde(rename = "KillSignal", skip_serializing_if = "Option::is_none")]
pub kill_signal: Option<String>,
#[serde(rename = "Kind", skip_serializing_if = "Option::is_none")]
pub kind: Option<String>,
}
impl Task {
pub fn new() -> Task {
Task {
name: None,
driver: None,
user: None,
lifecycle: None,
config: None,
constraints: None,
affinities: None,
env: None,
services: None,
resources: None,
meta: None,
kill_timeout: None,
log_config: None,
artifacts: None,
vault: None,
templates: None,
dispatch_payload: None,
volume_mounts: None,
csi_plugin: None,
leader: None,
shutdown_delay: None,
kill_signal: None,
kind: None,
}
}
}