arcbox_oci/config/
mount.rs1use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, Default, Serialize, Deserialize)]
7pub struct Root {
8 pub path: String,
11
12 #[serde(default)]
14 pub readonly: bool,
15}
16
17#[derive(Debug, Clone, Default, Serialize, Deserialize)]
19#[serde(rename_all = "camelCase")]
20pub struct Mount {
21 pub destination: String,
24
25 #[serde(skip_serializing_if = "Option::is_none")]
27 pub source: Option<String>,
28
29 #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
31 pub mount_type: Option<String>,
32
33 #[serde(skip_serializing_if = "Option::is_none")]
35 pub options: Option<Vec<String>>,
36
37 #[serde(default, skip_serializing_if = "Vec::is_empty")]
39 pub uid_mappings: Vec<IdMapping>,
40
41 #[serde(default, skip_serializing_if = "Vec::is_empty")]
43 pub gid_mappings: Vec<IdMapping>,
44}
45
46#[derive(Debug, Clone, Default, Serialize, Deserialize)]
48#[serde(rename_all = "camelCase")]
49pub struct IdMapping {
50 pub container_id: u32,
52 pub host_id: u32,
54 pub size: u32,
56}