/*
 * This is an auto-generated file.
 * Any manual changes may be overwritten without notice!
 */

use derive_builder::Builder;
use serde::{Deserialize, Serialize};

/// VolumeMount represents the relationship between a destination path in a task
/// and the task group volume that should be mounted there.
///
/// This struct was generated based on the Go types of the official Nomad API.
#[derive(Clone, Debug, Default, PartialEq, Serialize, Deserialize, Builder)]
pub struct VolumeMount {
    #[serde(rename = "Destination", skip_serializing_if = "Option::is_none")]
    pub destination: Option<String>,

    #[serde(rename = "read_only", skip_serializing_if = "Option::is_none")]
    pub read_only: Option<bool>,

    #[serde(rename = "propagation_mode", skip_serializing_if = "Option::is_none")]
    pub propagation_mode: Option<String>,

    #[serde(rename = "selinux_label", skip_serializing_if = "Option::is_none")]
    pub se_linux_label: Option<String>,

    #[serde(rename = "Volume", skip_serializing_if = "Option::is_none")]
    pub volume: Option<String>,
}
