podman_client/models/podman/common/
id_mapping_options.rs1use core::fmt;
2
3use serde::{Deserialize, Serialize};
4
5use crate::models::podman::common::id_map::IdMap;
6
7#[derive(Deserialize, Serialize, Default)]
8pub struct IdMappingOptions {
9 #[serde(rename = "AutoUserNs")]
10 pub auto_user_ns: Option<bool>,
11
12 #[serde(rename = "AutoUserNsOpts")]
13 pub auto_user_ns_opts: Option<IdMappingOptionsAutoUserNsOptsOptions>,
14
15 #[serde(rename = "GIDMap")]
16 pub gid_map: Option<Vec<IdMap>>,
17
18 #[serde(rename = "HostGIDMapping")]
19 pub host_gid_mapping: Option<bool>,
20
21 #[serde(rename = "HostUIDMapping")]
22 pub host_uid_mapping: Option<bool>,
23
24 #[serde(rename = "UIDMap")]
25 pub uid_map: Option<Vec<IdMap>>,
26}
27
28impl fmt::Debug for IdMappingOptions {
29 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
30 let json = serde_json::to_string_pretty(self).map_err(|_| fmt::Error)?;
31 f.write_str(&json)
32 }
33}
34
35#[derive(Deserialize, Serialize, Default)]
36pub struct IdMappingOptionsAutoUserNsOptsOptions {
37 #[serde(rename = "AdditionalGIDMappings")]
38 pub additional_gid_mappings: Option<Vec<IdMap>>,
39
40 #[serde(rename = "AdditionalUIDMappings")]
41 pub additional_uid_mappings: Option<Vec<IdMap>>,
42
43 #[serde(rename = "GroupFile")]
44 pub group_file: Option<String>,
45
46 #[serde(rename = "InitialSize")]
47 pub initial_size: Option<u32>,
48
49 #[serde(rename = "PasswdFile")]
50 pub passwd_file: Option<String>,
51
52 #[serde(rename = "Size")]
53 pub size: Option<u32>,
54}