Skip to main content

podtender/containers/
response_types.rs

1use crate::containers::parameter_types::{PortMapping, Schema2HealthConfig};
2use crate::pods::response_types::{
3    ErrIdResponse, InspectDevice, InspectHostPort, InspectMount, ListPodProcessesResponse,
4};
5use crate::volumes::response_types::ErrIdSizeResponse;
6use serde::{Deserialize, Serialize};
7use std::collections::HashMap;
8
9#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
10#[serde(deny_unknown_fields)]
11pub struct CreateContainerResponse {
12    #[serde(rename = "Id")]
13    pub id: String,
14    #[serde(rename = "Warnings")]
15    pub warnings: Vec<String>,
16}
17
18#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
19#[serde(deny_unknown_fields)]
20pub struct ListContainersResponseEntry {
21    #[serde(rename = "AutoRemove")]
22    pub auto_remove: Option<bool>,
23    #[serde(rename = "Command")]
24    pub command: Option<Vec<String>>,
25    #[serde(rename = "Created")]
26    pub created: Option<String>,
27    #[serde(rename = "CreatedAt")]
28    pub created_at: Option<String>,
29    #[serde(rename = "ExitCode")]
30    pub exit_code: Option<i32>,
31    #[serde(rename = "Exited")]
32    pub exited: Option<bool>,
33    #[serde(rename = "ExitedAt")]
34    pub exited_at: Option<i64>,
35    #[serde(rename = "Id")]
36    pub id: Option<String>,
37    #[serde(rename = "Image")]
38    pub image: Option<String>,
39    #[serde(rename = "ImageID")]
40    pub image_id: Option<String>,
41    #[serde(rename = "IsInfra")]
42    pub is_infra: Option<bool>,
43    #[serde(rename = "Labels")]
44    pub labels: Option<HashMap<String, String>>,
45    #[serde(rename = "Mounts")]
46    pub mounts: Option<Vec<String>>,
47    #[serde(rename = "Names")]
48    pub names: Option<Vec<String>>,
49    #[serde(rename = "Namespaces")]
50    pub namespaces: Option<ListContainerNamespaces>,
51    #[serde(rename = "Networks")]
52    pub networks: Option<Vec<String>>,
53    #[serde(rename = "Pid")]
54    pub pid: Option<i64>,
55    #[serde(rename = "Pod")]
56    pub pod: Option<String>,
57    #[serde(rename = "PodName")]
58    pub pod_name: Option<String>,
59    #[serde(rename = "Ports")]
60    pub ports: Option<Vec<PortMapping>>,
61    #[serde(rename = "Size")]
62    pub size: Option<ContainerSize>,
63    #[serde(rename = "StartedAt")]
64    pub started_at: Option<i64>,
65    #[serde(rename = "State")]
66    pub state: Option<String>,
67    #[serde(rename = "Status")]
68    pub status: Option<String>,
69}
70
71#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
72#[serde(deny_unknown_fields)]
73pub struct ListContainerNamespaces {
74    #[serde(rename = "Cgroup")]
75    pub c_group: Option<String>,
76    #[serde(rename = "Ipc")]
77    pub ipc: Option<String>,
78    #[serde(rename = "Mnt")]
79    pub mnt: Option<String>,
80    #[serde(rename = "Net")]
81    pub net: Option<String>,
82    #[serde(rename = "Pidns")]
83    pub pidns: Option<String>,
84    #[serde(rename = "User")]
85    pub user: Option<String>,
86    #[serde(rename = "Uts")]
87    pub uts: Option<String>,
88}
89
90#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
91#[serde(deny_unknown_fields)]
92pub struct ContainerSize {
93    #[serde(rename = "rootFsSize")]
94    pub root_fs_size: Option<i64>,
95    #[serde(rename = "rwSize")]
96    pub rw_size: Option<i64>,
97}
98
99#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
100#[serde(deny_unknown_fields)]
101pub struct HealthcheckContainerResponse {
102    #[serde(rename = "FailingStreak")]
103    pub failing_streak: Option<i64>,
104    #[serde(rename = "Log")]
105    pub log: Option<Vec<HealthCheckLog>>,
106    #[serde(rename = "Status")]
107    pub status: Option<String>,
108}
109type HealthCheckResults = HealthcheckContainerResponse;
110
111#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
112#[serde(deny_unknown_fields)]
113pub struct HealthCheckLog {
114    #[serde(rename = "End")]
115    pub end: Option<String>,
116    #[serde(rename = "ExitCode")]
117    pub exit_code: Option<i64>,
118    #[serde(rename = "Output")]
119    pub output: Option<String>,
120    #[serde(rename = "Start")]
121    pub start: Option<String>,
122}
123
124#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
125#[serde(deny_unknown_fields)]
126pub struct InspectContainerResponse {
127    #[serde(rename = "AppArmorProfile")]
128    pub app_armor_profile: Option<String>,
129    #[serde(rename = "Args")]
130    pub args: Option<Vec<String>>,
131    #[serde(rename = "BoundingCaps")]
132    pub bounding_caps: Option<Vec<String>>,
133    #[serde(rename = "Config")]
134    pub config: Option<InspectContainerConfig>,
135    #[serde(rename = "ConmonPidFile")]
136    pub conmon_pid_file: Option<String>,
137    #[serde(rename = "Created")]
138    pub created: Option<String>,
139    #[serde(rename = "Dependencies")]
140    pub dependencies: Option<Vec<String>>,
141    #[serde(rename = "Driver")]
142    pub driver: Option<String>,
143    #[serde(rename = "EffectiveCaps")]
144    pub effective_caps: Option<Vec<String>>,
145    #[serde(rename = "ExecIDs")]
146    pub exec_ids: Option<Vec<String>>,
147    #[serde(rename = "ExitCommand")]
148    pub exit_command: Option<Vec<String>>,
149    #[serde(rename = "GraphDriver")]
150    pub graph_driver: Option<DriverData>,
151    #[serde(rename = "HostConfig")]
152    pub host_config: Option<InspectContainerHostConfig>,
153    #[serde(rename = "HostnamePath")]
154    pub hostname_path: Option<String>,
155    #[serde(rename = "HostsPath")]
156    pub hosts_path: Option<String>,
157    #[serde(rename = "Id")]
158    pub id: Option<String>,
159    #[serde(rename = "Image")]
160    pub image: Option<String>,
161    #[serde(rename = "ImageDigest")]
162    pub image_digest: Option<String>,
163    #[serde(rename = "ImageName")]
164    pub image_name: Option<String>,
165    #[serde(rename = "IsInfra")]
166    pub is_infra: Option<bool>,
167    #[serde(rename = "IsService")]
168    pub is_service: Option<bool>,
169    #[serde(rename = "MountLabel")]
170    pub mount_label: Option<String>,
171    #[serde(rename = "Mounts")]
172    pub mounts: Option<Vec<InspectMount>>,
173    #[serde(rename = "Name")]
174    pub name: Option<String>,
175    #[serde(rename = "Namespace")]
176    pub namespace: Option<String>,
177    #[serde(rename = "NetworkSettings")]
178    pub network_settings: Option<InspectNetworkSettings>,
179    #[serde(rename = "OCIConfigPath")]
180    pub oci_config_path: Option<String>,
181    #[serde(rename = "OCIRuntime")]
182    pub oci_runtime: Option<String>,
183    #[serde(rename = "Path")]
184    pub path: Option<String>,
185    #[serde(rename = "PidFile")]
186    pub pid_file: Option<String>,
187    #[serde(rename = "Pod")]
188    pub pod: Option<String>,
189    #[serde(rename = "ProcessLabel")]
190    pub process_label: Option<String>,
191    #[serde(rename = "ResolvConfPath")]
192    pub resolv_conf_path: Option<String>,
193    #[serde(rename = "RestartCount")]
194    pub restart_count: Option<i32>,
195    #[serde(rename = "Rootfs")]
196    pub rootfs: Option<String>,
197    #[serde(rename = "SizeRootFs")]
198    pub size_rootfs: Option<i64>,
199    #[serde(rename = "SizeRw")]
200    pub size_rw: Option<i64>,
201    #[serde(rename = "State")]
202    pub state: Option<InspectContainerState>,
203    #[serde(rename = "StaticDir")]
204    pub static_dir: Option<String>,
205}
206
207#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
208#[serde(deny_unknown_fields)]
209pub struct InspectContainerConfig {
210    #[serde(rename = "Annotations")]
211    pub annotations: Option<HashMap<String, String>>,
212    #[serde(rename = "AttachStderr")]
213    pub attach_stderr: Option<bool>,
214    #[serde(rename = "AttachStdin")]
215    pub attach_stdin: Option<bool>,
216    #[serde(rename = "AttachStdout")]
217    pub attach_stdout: Option<bool>,
218    #[serde(rename = "Cmd")]
219    pub cmd: Option<Vec<String>>,
220    #[serde(rename = "CreateCommand")]
221    pub create_command: Option<Vec<String>>,
222    #[serde(rename = "Domainname")]
223    pub domainname: Option<String>,
224    #[serde(rename = "Entrypoint")]
225    pub entrypoint: Option<String>,
226    #[serde(rename = "Env")]
227    pub env: Option<Vec<String>>,
228    #[serde(rename = "Healthcheck")]
229    pub healthcheck: Option<Schema2HealthConfig>,
230    #[serde(rename = "HealthcheckOnFailureAction")]
231    pub healthcheck_on_failure_action: Option<String>,
232    #[serde(rename = "Hostname")]
233    pub hostname: Option<String>,
234    #[serde(rename = "Image")]
235    pub image: Option<String>,
236    #[serde(rename = "Labels")]
237    pub labels: Option<HashMap<String, String>>,
238    #[serde(rename = "OnBuild")]
239    pub on_build: Option<String>,
240    #[serde(rename = "OpenStdin")]
241    pub open_stdin: Option<bool>,
242    #[serde(rename = "Passwd")]
243    pub passwd: Option<bool>,
244    #[serde(rename = "sdNotifyMode")]
245    pub sd_notify_mode: Option<String>,
246    #[serde(rename = "sdNotifySocket")]
247    pub sd_notify_socket: Option<String>,
248    #[serde(rename = "Secrets")]
249    pub secrets: Option<Vec<InspectSecret>>,
250    #[serde(rename = "StdinOnce")]
251    pub stdin_once: Option<bool>,
252    #[serde(rename = "StopSignal")]
253    pub stop_signal: Option<u64>,
254    #[serde(rename = "StopTimeout")]
255    pub stop_timeout: Option<u64>,
256    #[serde(rename = "SystemdMode")]
257    pub systemd_mode: Option<bool>,
258    #[serde(rename = "Timeout")]
259    pub timeout: Option<u64>,
260    #[serde(rename = "Timezone")]
261    pub timezone: Option<String>,
262    #[serde(rename = "Tty")]
263    pub tty: Option<bool>,
264    #[serde(rename = "Umask")]
265    pub umask: Option<String>,
266    #[serde(rename = "User")]
267    pub user: Option<String>,
268    #[serde(rename = "Volumes")]
269    pub volumes: Option<HashMap<String, String>>,
270    #[serde(rename = "WorkingDir")]
271    pub working_dir: Option<String>,
272}
273
274#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
275#[serde(deny_unknown_fields)]
276pub struct InspectSecret {
277    #[serde(rename = "GID")]
278    pub gid: Option<u32>,
279    #[serde(rename = "ID")]
280    pub id: Option<String>,
281    #[serde(rename = "Mode")]
282    pub mode: Option<u32>,
283    #[serde(rename = "Name")]
284    pub name: Option<String>,
285    #[serde(rename = "UID")]
286    pub uid: Option<u32>,
287}
288
289#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
290#[serde(deny_unknown_fields)]
291pub struct DriverData {
292    #[serde(rename = "Data")]
293    pub data: Option<HashMap<String, String>>,
294    #[serde(rename = "Name")]
295    pub name: Option<String>,
296}
297
298#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
299#[serde(deny_unknown_fields)]
300pub struct InspectContainerHostConfig {
301    #[serde(rename = "AutoRemove")]
302    pub auto_remove: Option<bool>,
303    #[serde(rename = "Binds")]
304    pub binds: Option<Vec<String>>,
305    #[serde(rename = "BlkioDeviceReadBps")]
306    pub blkio_device_read_bps: Option<Vec<InspectBlkioThrottleDevice>>,
307    #[serde(rename = "BlkioDeviceReadIOps")]
308    pub blkio_device_read_iops: Option<InspectBlkioThrottleDevice>,
309    #[serde(rename = "BlkioDeviceWriteBps")]
310    pub blkio_device_write_bps: Option<InspectBlkioThrottleDevice>,
311    #[serde(rename = "BlkioDeviceWriteIOps")]
312    pub blkio_device_write_iops: Option<InspectBlkioThrottleDevice>,
313    #[serde(rename = "BlkioWeight")]
314    pub blkio_weight: Option<u16>,
315    #[serde(rename = "BlkioWeightDevice")]
316    pub blkio_weight_device: Option<InspectBlkioWeightDevice>,
317    #[serde(rename = "CapAdd")]
318    pub cap_add: Option<Vec<String>>,
319    #[serde(rename = "CapDrop")]
320    pub cap_drop: Option<Vec<String>>,
321    #[serde(rename = "Cgroup")]
322    pub cgroup: Option<String>,
323    #[serde(rename = "CgroupConf")]
324    pub cgroup_conf: Option<HashMap<String, String>>,
325    #[serde(rename = "CgroupManager")]
326    pub cgroup_manager: Option<String>,
327    #[serde(rename = "CgroupMode")]
328    pub cgroup_mode: Option<String>,
329    #[serde(rename = "CgroupParent")]
330    pub cgroup_parent: Option<String>,
331    #[serde(rename = "Cgroups")]
332    pub cgroups: Option<String>,
333    #[serde(rename = "ConsoleSize")]
334    pub console_size: Option<Vec<u64>>,
335    #[serde(rename = "ContainerIDFile")]
336    pub container_id_file: Option<String>,
337    #[serde(rename = "CpuCount")]
338    pub cpu_count: Option<u64>,
339    #[serde(rename = "CpuPercent")]
340    pub cpu_percent: Option<u64>,
341    #[serde(rename = "CpuPeriod")]
342    pub cpu_period: Option<u64>,
343    #[serde(rename = "CpuQuota")]
344    pub cpu_quota: Option<u64>,
345    #[serde(rename = "CpuRealtimePeriod")]
346    pub cpu_realtime_period: Option<u64>,
347    #[serde(rename = "CpuRealtimeRuntime")]
348    pub cpu_realtime_runtime: Option<u64>,
349    #[serde(rename = "CpusetCpus")]
350    pub cpuset_cpus: Option<String>,
351    #[serde(rename = "CpusetMems")]
352    pub cpuset_mems: Option<String>,
353    #[serde(rename = "CpuShares")]
354    pub cpu_shares: Option<u64>,
355    #[serde(rename = "Devices")]
356    pub devices: Option<Vec<InspectDevice>>,
357    #[serde(rename = "DiskQuota")]
358    pub disk_quota: Option<u64>,
359    #[serde(rename = "Dns")]
360    pub dns: Option<Vec<String>>,
361    #[serde(rename = "DnsOptions")]
362    pub dns_options: Option<Vec<String>>,
363    #[serde(rename = "DnsSearch")]
364    pub dns_search: Option<Vec<String>>,
365    #[serde(rename = "ExtraHosts")]
366    pub extra_hosts: Option<Vec<String>>,
367    #[serde(rename = "GroupAdd")]
368    pub group_add: Option<Vec<String>>,
369    #[serde(rename = "Init")]
370    pub init: Option<bool>,
371    #[serde(rename = "IOMaximumBandwidth")]
372    pub io_maximum_bandwidth: Option<u64>,
373    #[serde(rename = "IOMaximumIOps")]
374    pub io_maximum_iops: Option<u64>,
375    #[serde(rename = "IpcMode")]
376    pub ipc_mode: Option<String>,
377    #[serde(rename = "Isolation")]
378    pub isolation: Option<String>,
379    #[serde(rename = "KernelMemory")]
380    pub kernel_memory: Option<i64>,
381    #[serde(rename = "Links")]
382    pub links: Option<Vec<String>>,
383    #[serde(rename = "LogConfig")]
384    pub log_config: Option<InspectLogConfig>,
385    #[serde(rename = "Memory")]
386    pub memory: Option<i64>,
387    #[serde(rename = "MemoryReservation")]
388    pub memory_reservation: Option<i64>,
389    #[serde(rename = "MemorySwap")]
390    pub memory_swap: Option<i64>,
391    #[serde(rename = "MemorySwappiness")]
392    pub memory_swappiness: Option<i64>,
393    #[serde(rename = "NanoCpus")]
394    pub nano_cpus: Option<i64>,
395    #[serde(rename = "NetworkMode")]
396    pub network_mode: Option<String>,
397    #[serde(rename = "OomKillDisable")]
398    pub oom_kill_disable: Option<bool>,
399    #[serde(rename = "OomScoreAdj")]
400    pub oom_score_adj: Option<i64>,
401    #[serde(rename = "PidMode")]
402    pub pid_mode: Option<String>,
403    #[serde(rename = "PidsLimit")]
404    pub pids_limit: Option<i64>,
405    #[serde(rename = "PortBindings")]
406    pub port_bindings: Option<HashMap<String, Vec<InspectHostPort>>>,
407    #[serde(rename = "Privileged")]
408    pub privileged: Option<bool>,
409    #[serde(rename = "PublishAllPorts")]
410    pub publish_all_ports: Option<bool>,
411    #[serde(rename = "ReadonlyRootfs")]
412    pub readonly_rootfs: Option<bool>,
413    #[serde(rename = "RestartPolicy")]
414    pub restart_policy: Option<InspectRestartPolicy>,
415    #[serde(rename = "Runtime")]
416    pub runtime: Option<String>,
417    #[serde(rename = "SecurityOpt")]
418    pub security_opt: Option<Vec<String>>,
419    #[serde(rename = "ShmSize")]
420    pub shm_size: Option<i64>,
421    #[serde(rename = "Tmpfs")]
422    pub tmpfs: Option<HashMap<String, String>>,
423    #[serde(rename = "Ulimits")]
424    pub ulimits: Option<Vec<InspectUlimit>>,
425    #[serde(rename = "UsernsMode")]
426    pub userns_mode: Option<String>,
427    #[serde(rename = "UTSMode")]
428    pub uts_mode: Option<String>,
429    #[serde(rename = "VolumeDriver")]
430    pub volume_driver: Option<String>,
431    #[serde(rename = "VolumesFrom")]
432    pub volumes_from: Option<Vec<String>>,
433}
434
435#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
436#[serde(deny_unknown_fields)]
437pub struct InspectBlkioThrottleDevice {
438    #[serde(rename = "Path")]
439    pub path: Option<String>,
440    #[serde(rename = "Rate")]
441    pub rate: Option<u64>,
442}
443
444#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
445#[serde(deny_unknown_fields)]
446pub struct InspectBlkioWeightDevice {
447    #[serde(rename = "Path")]
448    pub path: Option<String>,
449    #[serde(rename = "Rate")]
450    pub rate: Option<u64>,
451}
452
453#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
454#[serde(deny_unknown_fields)]
455pub struct InspectLogConfig {
456    #[serde(rename = "Config")]
457    pub config: Option<HashMap<String, String>>,
458    #[serde(rename = "Path")]
459    pub path: Option<String>,
460    #[serde(rename = "Size")]
461    pub size: Option<String>,
462    #[serde(rename = "Tag")]
463    pub tag: Option<String>,
464    #[serde(rename = "Type")]
465    pub type_: Option<String>,
466}
467
468#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
469#[serde(deny_unknown_fields)]
470pub struct InspectRestartPolicy {
471    #[serde(rename = "MaximumRetryCount")]
472    pub maximum_retry_count: Option<u64>,
473    #[serde(rename = "Name")]
474    pub name: Option<String>,
475}
476
477#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
478#[serde(deny_unknown_fields)]
479pub struct InspectUlimit {
480    #[serde(rename = "Hard")]
481    pub hard: Option<i64>,
482    #[serde(rename = "Name")]
483    pub name: Option<String>,
484    #[serde(rename = "Soft")]
485    pub soft: Option<i64>,
486}
487
488#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
489#[serde(deny_unknown_fields)]
490pub struct InspectNetworkSettings {
491    #[serde(rename = "AdditionalMacAddresses")]
492    pub additional_mac_addresses: Option<Vec<String>>,
493    #[serde(rename = "Bridge")]
494    pub bridge: Option<String>,
495    #[serde(rename = "EndpointID")]
496    pub endpoint_id: Option<String>,
497    #[serde(rename = "Gateway")]
498    pub gateway: Option<String>,
499    #[serde(rename = "GlobalIPv6Address")]
500    pub global_ipv6_address: Option<String>,
501    #[serde(rename = "GlobalIPv6PrefixLen")]
502    pub global_ipv6_prefix_len: Option<i64>,
503    #[serde(rename = "HairpinMode")]
504    pub hairpin_mode: Option<bool>,
505    #[serde(rename = "IPAddress")]
506    pub ip_address: Option<String>,
507    #[serde(rename = "IPPrefixLen")]
508    pub ip_prefix_len: Option<i64>,
509    #[serde(rename = "IPv6Gateway")]
510    pub ipv6_gateway: Option<String>,
511    #[serde(rename = "LinkLocalIPv6Address")]
512    pub link_local_ipv6_address: Option<String>,
513    #[serde(rename = "LinkLocalIPv6PrefixLen")]
514    pub link_local_ipv6_prefix_len: Option<i64>,
515    #[serde(rename = "MacAddress")]
516    pub mac_address: Option<String>,
517    #[serde(rename = "Networks")]
518    pub networks: Option<HashMap<String, InspectAdditionalNetwork>>,
519    #[serde(rename = "Ports")]
520    pub ports: Option<HashMap<String, InspectHostPort>>,
521    #[serde(rename = "SandboxID")]
522    pub sandbox_id: Option<String>,
523    #[serde(rename = "SandboxKey")]
524    pub sandbox_key: Option<String>,
525    #[serde(rename = "SecondaryIPAddresses")]
526    pub secondary_ip_addresses: Option<Vec<String>>,
527    #[serde(rename = "SecondaryIpv6Addresses")]
528    pub secondary_ipv6_addresses: Option<Vec<String>>,
529}
530
531#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
532#[serde(deny_unknown_fields)]
533pub struct InspectAdditionalNetwork {
534    #[serde(rename = "AdditionalMacAddresses")]
535    pub additional_mac_addresses: Option<Vec<String>>,
536    #[serde(rename = "Aliases")]
537    pub aliases: Option<Vec<String>>,
538    #[serde(rename = "DriverOpts")]
539    pub driver_opts: Option<String>,
540    #[serde(rename = "EndpointID")]
541    pub endpoint_id: Option<String>,
542    #[serde(rename = "Gateway")]
543    pub gateway: Option<String>,
544    #[serde(rename = "GlobalIPv6Address")]
545    pub global_ipv6_address: Option<String>,
546    #[serde(rename = "GlobalIPv6PrefixLen")]
547    pub global_ipv6_prefix_len: Option<i64>,
548    #[serde(rename = "IPAddress")]
549    pub ip_address: Option<String>,
550    #[serde(rename = "IPAMConfig")]
551    pub ipam_config: Option<HashMap<String, String>>,
552    #[serde(rename = "IPPrefixLen")]
553    pub ip_prefix_len: Option<i64>,
554    #[serde(rename = "IPv6Gateway")]
555    pub ipv6_gateway: Option<String>,
556    #[serde(rename = "Links")]
557    pub links: Option<Vec<String>>,
558    #[serde(rename = "MacAddress")]
559    pub mac_address: Option<String>,
560    #[serde(rename = "NetworkID")]
561    pub network_id: Option<String>,
562    #[serde(rename = "SecondaryIPAddresses")]
563    pub secondary_ip_addresses: Option<Vec<String>>,
564    #[serde(rename = "SecondaryIpv6Addresses")]
565    pub secondary_ipv6_addresses: Option<Vec<String>>,
566}
567
568#[derive(Serialize, Deserialize, Debug, Clone, Eq, PartialEq)]
569#[serde(deny_unknown_fields)]
570pub struct InspectContainerState {
571    #[serde(rename = "CgroupPath")]
572    pub cgroup_path: Option<String>,
573    #[serde(rename = "Checkpointed")]
574    pub checkpointed: Option<bool>,
575    #[serde(rename = "CheckpointedAt")]
576    pub checkpointed_at: Option<String>,
577    #[serde(rename = "CheckpointLog")]
578    pub checkpoint_log: Option<String>,
579    #[serde(rename = "CheckpointedPath")]
580    pub checkpoint_path: Option<String>,
581    #[serde(rename = "ConmonPid")]
582    pub conmon_pid: Option<i64>,
583    #[serde(rename = "Dead")]
584    pub dead: Option<bool>,
585    #[serde(rename = "Error")]
586    pub error: Option<String>,
587    #[serde(rename = "ExitCode")]
588    pub exit_code: Option<i32>,
589    #[serde(rename = "FinishedAt")]
590    pub finished_at: Option<String>,
591    #[serde(rename = "Health")]
592    pub health: Option<HealthCheckResults>,
593    #[serde(rename = "OciVersion")]
594    pub oci_version: Option<String>,
595    #[serde(rename = "OOMKilled")]
596    pub oom_killed: Option<bool>,
597    #[serde(rename = "Paused")]
598    pub paused: Option<bool>,
599    #[serde(rename = "Pid")]
600    pub pid: Option<i64>,
601    #[serde(rename = "Restarting")]
602    pub restarting: Option<bool>,
603    #[serde(rename = "Restored")]
604    pub restored: Option<bool>,
605    #[serde(rename = "RestoredAt")]
606    pub restored_at: Option<String>,
607    #[serde(rename = "RestoreLog")]
608    pub restore_log: Option<String>,
609    #[serde(rename = "Running")]
610    pub running: Option<bool>,
611    #[serde(rename = "StartedAt")]
612    pub started_at: Option<String>,
613    #[serde(rename = "Status")]
614    pub status: Option<String>,
615}
616
617#[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] //Eq,
618#[serde(deny_unknown_fields)]
619pub struct ContainerStatsResponse {
620    #[serde(rename = "Error")]
621    pub error: Option<String>,
622    #[serde(rename = "Stats")]
623    pub stats: Option<Vec<ContainerStatsResponseInner>>,
624}
625
626#[derive(Serialize, Deserialize, Debug, Clone, PartialEq)] //Eq,
627#[serde(deny_unknown_fields)]
628pub struct ContainerStatsResponseInner {
629    #[serde(rename = "AvgCPU")]
630    pub avg_cpu: Option<f64>,
631    #[serde(rename = "BlockInput")]
632    pub block_input: Option<u64>,
633    #[serde(rename = "BlockOutput")]
634    pub block_output: Option<u64>,
635    #[serde(rename = "ContainerID")]
636    pub container_id: Option<String>,
637    #[serde(rename = "CPU")]
638    pub cpu: Option<f64>,
639    #[serde(rename = "CPUNano")]
640    pub cpu_nano: Option<u64>,
641    #[serde(rename = "CPUSystemNano")]
642    pub cpu_system_nano: Option<u64>,
643    #[serde(rename = "DataPoints")]
644    pub data_points: Option<i64>,
645    #[serde(rename = "Duration")]
646    pub duration: Option<u64>,
647    #[serde(rename = "MemLimit")]
648    pub mem_limit: Option<u64>,
649    #[serde(rename = "MemPerc")]
650    pub mem_perc: Option<f64>,
651    #[serde(rename = "MemUsage")]
652    pub mem_usage: Option<u64>,
653    #[serde(rename = "Name")]
654    pub name: Option<String>,
655    #[serde(rename = "NetInput")]
656    pub net_input: Option<u64>,
657    #[serde(rename = "NetOutput")]
658    pub net_output: Option<u64>,
659    #[serde(rename = "PerCPU")]
660    pub per_cpu: Option<Vec<u64>>,
661    #[serde(rename = "PIDs")]
662    pub pids: Option<u64>,
663    #[serde(rename = "SystemNano")]
664    pub system_nano: Option<u64>,
665    #[serde(rename = "UpTime")]
666    pub up_time: Option<u64>,
667}
668
669pub type PruneContainerResponseEntry = ErrIdSizeResponse;
670
671pub type ContainerDeleteResponseEntry = ErrIdResponse;
672
673pub type ListContainerProcessesResponse = ListPodProcessesResponse;