podman_rest_client/v5/models/inspect_pod_data.rs
1use serde::{Deserialize, Serialize};
2#[derive(Default, Debug, Serialize, Deserialize)]
3/// InspectPodData contains detailed information on a pod's configuration and
4/// state. It is used as the output of Inspect on pods.
5pub struct InspectPodData {
6 /// CgroupParent is the parent of the pod's Cgroup.
7 #[serde(rename = "CgroupParent")]
8 pub cgroup_parent: Option<String>,
9 /// CgroupPath is the path to the pod's Cgroup.
10 #[serde(rename = "CgroupPath")]
11 pub cgroup_path: Option<String>,
12 /// Containers gives a brief summary of all containers in the pod and
13 /// their current status.
14 #[serde(rename = "Containers")]
15 pub containers: Option<Vec<crate::v5::models::InspectPodContainerInfo>>,
16 /// CreateCgroup is whether this pod will create its own Cgroup to group
17 /// containers under.
18 #[serde(rename = "CreateCgroup")]
19 pub create_cgroup: Option<bool>,
20 /// CreateCommand is the full command plus arguments of the process the
21 /// container has been created with.
22 #[serde(rename = "CreateCommand")]
23 pub create_command: Option<Vec<String>>,
24 /// CreateInfra is whether this pod will create an infra container to
25 /// share namespaces.
26 #[serde(rename = "CreateInfra")]
27 pub create_infra: Option<bool>,
28 /// Created is the time when the pod was created.
29 #[serde(rename = "Created")]
30 pub created: Option<String>,
31 /// ExitPolicy of the pod.
32 #[serde(rename = "ExitPolicy")]
33 pub exit_policy: Option<String>,
34 /// Hostname is the hostname that the pod will set.
35 #[serde(rename = "Hostname")]
36 pub hostname: Option<String>,
37 /// ID is the ID of the pod.
38 #[serde(rename = "Id")]
39 pub id: Option<String>,
40 #[serde(rename = "InfraConfig")]
41 pub infra_config: Option<crate::v5::models::InspectPodInfraConfig>,
42 /// InfraContainerID is the ID of the pod's infra container, if one is
43 /// present.
44 #[serde(rename = "InfraContainerID")]
45 pub infra_container_id: Option<String>,
46 /// Labels is a set of key-value labels that have been applied to the
47 /// pod.
48 #[serde(rename = "Labels")]
49 pub labels: Option<std::collections::HashMap<String, String>>,
50 /// Number of the pod's Libpod lock.
51 #[serde(rename = "LockNumber")]
52 pub lock_number: Option<u32>,
53 /// Name is the name of the pod.
54 #[serde(rename = "Name")]
55 pub name: Option<String>,
56 /// Namespace is the Libpod namespace the pod is placed in.
57 #[serde(rename = "Namespace")]
58 pub namespace: Option<String>,
59 /// NumContainers is the number of containers in the pod, including the
60 /// infra container.
61 #[serde(rename = "NumContainers")]
62 pub num_containers: Option<u64>,
63 /// RestartPolicy of the pod.
64 #[serde(rename = "RestartPolicy")]
65 pub restart_policy: Option<String>,
66 /// SharedNamespaces contains a list of namespaces that will be shared by
67 /// containers within the pod. Can only be set if CreateInfra is true.
68 #[serde(rename = "SharedNamespaces")]
69 pub shared_namespaces: Option<Vec<String>>,
70 /// State represents the current state of the pod.
71 #[serde(rename = "State")]
72 pub state: Option<String>,
73 /// BlkioWeight contains the blkio weight limit for the pod
74 pub blkio_weight: Option<u64>,
75 /// BlkioWeightDevice contains the blkio weight device limits for the pod
76 pub blkio_weight_device: Option<Vec<crate::v5::models::InspectBlkioWeightDevice>>,
77 /// CPUPeriod contains the CPU period of the pod
78 pub cpu_period: Option<u64>,
79 /// CPUQuota contains the CPU quota of the pod
80 pub cpu_quota: Option<i64>,
81 /// CPUShares contains the cpu shares for the pod
82 pub cpu_shares: Option<u64>,
83 /// CPUSetCPUs contains linux specific CPU data for the pod
84 pub cpuset_cpus: Option<String>,
85 /// CPUSetMems contains linux specific CPU data for the pod
86 pub cpuset_mems: Option<String>,
87 /// BlkioDeviceReadBps contains the Read/Access limit for the pod's devices
88 pub device_read_bps: Option<Vec<crate::v5::models::InspectBlkioThrottleDevice>>,
89 /// BlkioDeviceReadBps contains the Read/Access limit for the pod's devices
90 pub device_write_bps: Option<Vec<crate::v5::models::InspectBlkioThrottleDevice>>,
91 /// Devices contains the specified host devices
92 pub devices: Option<Vec<crate::v5::models::InspectDevice>>,
93 /// MemoryLimit contains the specified cgroup memory limit for the pod
94 pub memory_limit: Option<u64>,
95 /// MemorySwap contains the specified memory swap limit for the pod
96 pub memory_swap: Option<u64>,
97 /// Mounts contains volume related information for the pod
98 pub mounts: Option<Vec<crate::v5::models::InspectMount>>,
99 /// SecurityOpt contains the specified security labels and related SELinux information
100 pub security_opt: Option<Vec<String>>,
101 /// VolumesFrom contains the containers that the pod inherits mounts from
102 pub volumes_from: Option<Vec<String>>,
103}