#![allow(
non_snake_case,
clippy::redundant_field_names,
clippy::new_without_default,
clippy::too_many_arguments
)]
use serde::{Deserialize, Serialize};
use serde_json::Value;
use std::collections::HashMap;
use chrono::{DateTime, Utc};
fn deserialize_nonoptional_vec<
'de,
D: serde::de::Deserializer<'de>,
T: serde::de::DeserializeOwned,
>(
d: D,
) -> Result<Vec<T>, D::Error> {
serde::de::Deserialize::deserialize(d).map(|x: Option<_>| x.unwrap_or_default())
}
fn deserialize_nonoptional_map<
'de,
D: serde::de::Deserializer<'de>,
T: serde::de::DeserializeOwned,
>(
d: D,
) -> Result<HashMap<String, T>, D::Error> {
serde::de::Deserialize::deserialize(d).map(|x: Option<_>| x.unwrap_or_default())
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Address {
#[serde(rename = "Addr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub addr: Option<String>,
#[serde(rename = "PrefixLen")]
#[serde(skip_serializing_if = "Option::is_none")]
pub prefix_len: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct AuthConfig {
#[serde(skip_serializing_if = "Option::is_none")]
pub email: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub password: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub serveraddress: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub username: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct BuildCache {
#[serde(rename = "CreatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub created_at: Option<DateTime<Utc>>,
#[serde(rename = "Description")]
#[serde(skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "InUse")]
#[serde(skip_serializing_if = "Option::is_none")]
pub in_use: Option<bool>,
#[serde(rename = "LastUsedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub last_used_at: Option<DateTime<Utc>>,
#[serde(rename = "Parent")]
#[serde(skip_serializing_if = "Option::is_none")]
pub parent: Option<String>,
#[serde(rename = "Shared")]
#[serde(skip_serializing_if = "Option::is_none")]
pub shared: Option<bool>,
#[serde(rename = "Size")]
#[serde(skip_serializing_if = "Option::is_none")]
pub size: Option<isize>,
#[serde(rename = "Type")]
#[serde(skip_serializing_if = "Option::is_none")]
pub type_: Option<String>,
#[serde(rename = "UsageCount")]
#[serde(skip_serializing_if = "Option::is_none")]
pub usage_count: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum BuildCacheTypeInlineItem {
#[serde(rename = "internal")]
Internal,
#[serde(rename = "frontend")]
Frontend,
#[serde(rename = "source.local")]
SourceLocal,
#[serde(rename = "source.git.checkout")]
SourceGitCheckout,
#[serde(rename = "exec.cachemount")]
ExecCachemount,
#[serde(rename = "regular")]
Regular,
}
impl AsRef<str> for BuildCacheTypeInlineItem {
fn as_ref(&self) -> &str {
match self {
BuildCacheTypeInlineItem::Internal => "internal",
BuildCacheTypeInlineItem::Frontend => "frontend",
BuildCacheTypeInlineItem::SourceLocal => "source.local",
BuildCacheTypeInlineItem::SourceGitCheckout => "source.git.checkout",
BuildCacheTypeInlineItem::ExecCachemount => "exec.cachemount",
BuildCacheTypeInlineItem::Regular => "regular",
}
}
}
impl std::fmt::Display for BuildCacheTypeInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct BuildInfo {
pub aux: Option<ImageId>,
#[serde(skip_serializing_if = "Option::is_none")]
pub error: Option<String>,
#[serde(rename = "errorDetail")]
pub error_detail: Option<ErrorDetail>,
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub progress: Option<String>,
#[serde(rename = "progressDetail")]
pub progress_detail: Option<ProgressDetail>,
#[serde(skip_serializing_if = "Option::is_none")]
pub status: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub stream: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct BuildPrune200Response {
#[serde(rename = "CachesDeleted")]
#[serde(skip_serializing_if = "Option::is_none")]
pub caches_deleted: Option<Vec<String>>,
#[serde(rename = "SpaceReclaimed")]
#[serde(skip_serializing_if = "Option::is_none")]
pub space_reclaimed: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ClusterInfo {
#[serde(rename = "CreatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub created_at: Option<DateTime<Utc>>,
#[serde(rename = "DataPathPort")]
#[serde(skip_serializing_if = "Option::is_none")]
pub data_path_port: Option<u32>,
#[serde(rename = "DefaultAddrPool")]
#[serde(skip_serializing_if = "Option::is_none")]
pub default_addr_pool: Option<Vec<String>>,
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "RootRotationInProgress")]
#[serde(skip_serializing_if = "Option::is_none")]
pub root_rotation_in_progress: Option<bool>,
#[serde(rename = "Spec")]
pub spec: Option<SwarmSpec>,
#[serde(rename = "SubnetSize")]
#[serde(skip_serializing_if = "Option::is_none")]
pub subnet_size: Option<u32>,
#[serde(rename = "TLSInfo")]
pub tls_info: Option<TlsInfo>,
#[serde(rename = "UpdatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_at: Option<DateTime<Utc>>,
#[serde(rename = "Version")]
pub version: Option<ObjectVersion>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Commit {
#[serde(rename = "Expected")]
#[serde(skip_serializing_if = "Option::is_none")]
pub expected: Option<String>,
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ComponentVersion {
#[serde(rename = "Details")]
#[serde(skip_serializing_if = "Option::is_none")]
pub details: Option<Value>,
#[serde(rename = "Name")]
pub name: String,
#[serde(rename = "Version")]
pub version: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Config {
#[serde(rename = "CreatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub created_at: Option<DateTime<Utc>>,
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "Spec")]
pub spec: Option<ConfigSpec>,
#[serde(rename = "UpdatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_at: Option<DateTime<Utc>>,
#[serde(rename = "Version")]
pub version: Option<ObjectVersion>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ConfigCreateBodyParam {
#[serde(rename = "Data")]
#[serde(skip_serializing_if = "Option::is_none")]
pub data: Option<String>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Templating")]
pub templating: Option<Driver>,
}
pub type ConfigList200Response = Vec<Config>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ConfigSpec {
#[serde(rename = "Data")]
#[serde(skip_serializing_if = "Option::is_none")]
pub data: Option<String>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Templating")]
pub templating: Option<Driver>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerChangeResponseItem {
#[serde(rename = "Kind")]
pub kind: u8,
#[serde(rename = "Path")]
pub path: String,
}
pub type ContainerChanges200Response = Vec<ContainerChangeResponseItem>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerConfig {
#[serde(rename = "ArgsEscaped")]
#[serde(skip_serializing_if = "Option::is_none")]
pub args_escaped: Option<bool>,
#[serde(rename = "AttachStderr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub attach_stderr: Option<bool>,
#[serde(rename = "AttachStdin")]
#[serde(skip_serializing_if = "Option::is_none")]
pub attach_stdin: Option<bool>,
#[serde(rename = "AttachStdout")]
#[serde(skip_serializing_if = "Option::is_none")]
pub attach_stdout: Option<bool>,
#[serde(rename = "Cmd")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cmd: Option<Vec<String>>,
#[serde(rename = "Domainname")]
#[serde(skip_serializing_if = "Option::is_none")]
pub domainname: Option<String>,
#[serde(rename = "Entrypoint")]
#[serde(skip_serializing_if = "Option::is_none")]
pub entrypoint: Option<Vec<String>>,
#[serde(rename = "Env")]
#[serde(skip_serializing_if = "Option::is_none")]
pub env: Option<Vec<String>>,
#[serde(rename = "ExposedPorts")]
#[serde(skip_serializing_if = "Option::is_none")]
pub exposed_ports: Option<HashMap<String, Value>>,
#[serde(rename = "Healthcheck")]
pub healthcheck: Option<HealthConfig>,
#[serde(rename = "Hostname")]
#[serde(skip_serializing_if = "Option::is_none")]
pub hostname: Option<String>,
#[serde(rename = "Image")]
#[serde(skip_serializing_if = "Option::is_none")]
pub image: Option<String>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "MacAddress")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mac_address: Option<String>,
#[serde(rename = "NetworkDisabled")]
#[serde(skip_serializing_if = "Option::is_none")]
pub network_disabled: Option<bool>,
#[serde(rename = "OnBuild")]
#[serde(skip_serializing_if = "Option::is_none")]
pub on_build: Option<Vec<String>>,
#[serde(rename = "OpenStdin")]
#[serde(skip_serializing_if = "Option::is_none")]
pub open_stdin: Option<bool>,
#[serde(rename = "Shell")]
#[serde(skip_serializing_if = "Option::is_none")]
pub shell: Option<Vec<String>>,
#[serde(rename = "StdinOnce")]
#[serde(skip_serializing_if = "Option::is_none")]
pub stdin_once: Option<bool>,
#[serde(rename = "StopSignal")]
#[serde(skip_serializing_if = "Option::is_none")]
pub stop_signal: Option<String>,
#[serde(rename = "StopTimeout")]
#[serde(skip_serializing_if = "Option::is_none")]
pub stop_timeout: Option<isize>,
#[serde(rename = "Tty")]
#[serde(skip_serializing_if = "Option::is_none")]
pub tty: Option<bool>,
#[serde(rename = "User")]
#[serde(skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
#[serde(rename = "Volumes")]
#[serde(skip_serializing_if = "Option::is_none")]
pub volumes: Option<HashMap<String, Value>>,
#[serde(rename = "WorkingDir")]
#[serde(skip_serializing_if = "Option::is_none")]
pub working_dir: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerCreate201Response {
#[serde(rename = "Id")]
pub id: String,
#[serde(rename = "Warnings")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub warnings: Vec<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerCreateBodyParam {
#[serde(rename = "ArgsEscaped")]
#[serde(skip_serializing_if = "Option::is_none")]
pub args_escaped: Option<bool>,
#[serde(rename = "AttachStderr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub attach_stderr: Option<bool>,
#[serde(rename = "AttachStdin")]
#[serde(skip_serializing_if = "Option::is_none")]
pub attach_stdin: Option<bool>,
#[serde(rename = "AttachStdout")]
#[serde(skip_serializing_if = "Option::is_none")]
pub attach_stdout: Option<bool>,
#[serde(rename = "Cmd")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cmd: Option<Vec<String>>,
#[serde(rename = "Domainname")]
#[serde(skip_serializing_if = "Option::is_none")]
pub domainname: Option<String>,
#[serde(rename = "Entrypoint")]
#[serde(skip_serializing_if = "Option::is_none")]
pub entrypoint: Option<Vec<String>>,
#[serde(rename = "Env")]
#[serde(skip_serializing_if = "Option::is_none")]
pub env: Option<Vec<String>>,
#[serde(rename = "ExposedPorts")]
#[serde(skip_serializing_if = "Option::is_none")]
pub exposed_ports: Option<HashMap<String, Value>>,
#[serde(rename = "Healthcheck")]
pub healthcheck: Option<HealthConfig>,
#[serde(rename = "HostConfig")]
pub host_config: Option<Value>,
#[serde(rename = "Hostname")]
#[serde(skip_serializing_if = "Option::is_none")]
pub hostname: Option<String>,
#[serde(rename = "Image")]
#[serde(skip_serializing_if = "Option::is_none")]
pub image: Option<String>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "MacAddress")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mac_address: Option<String>,
#[serde(rename = "NetworkDisabled")]
#[serde(skip_serializing_if = "Option::is_none")]
pub network_disabled: Option<bool>,
#[serde(rename = "NetworkingConfig")]
pub networking_config: Option<NetworkingConfig>,
#[serde(rename = "OnBuild")]
#[serde(skip_serializing_if = "Option::is_none")]
pub on_build: Option<Vec<String>>,
#[serde(rename = "OpenStdin")]
#[serde(skip_serializing_if = "Option::is_none")]
pub open_stdin: Option<bool>,
#[serde(rename = "Shell")]
#[serde(skip_serializing_if = "Option::is_none")]
pub shell: Option<Vec<String>>,
#[serde(rename = "StdinOnce")]
#[serde(skip_serializing_if = "Option::is_none")]
pub stdin_once: Option<bool>,
#[serde(rename = "StopSignal")]
#[serde(skip_serializing_if = "Option::is_none")]
pub stop_signal: Option<String>,
#[serde(rename = "StopTimeout")]
#[serde(skip_serializing_if = "Option::is_none")]
pub stop_timeout: Option<isize>,
#[serde(rename = "Tty")]
#[serde(skip_serializing_if = "Option::is_none")]
pub tty: Option<bool>,
#[serde(rename = "User")]
#[serde(skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
#[serde(rename = "Volumes")]
#[serde(skip_serializing_if = "Option::is_none")]
pub volumes: Option<HashMap<String, Value>>,
#[serde(rename = "WorkingDir")]
#[serde(skip_serializing_if = "Option::is_none")]
pub working_dir: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerExecExecConfigParam {
#[serde(rename = "AttachStderr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub attach_stderr: Option<bool>,
#[serde(rename = "AttachStdin")]
#[serde(skip_serializing_if = "Option::is_none")]
pub attach_stdin: Option<bool>,
#[serde(rename = "AttachStdout")]
#[serde(skip_serializing_if = "Option::is_none")]
pub attach_stdout: Option<bool>,
#[serde(rename = "Cmd")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cmd: Option<Vec<String>>,
#[serde(rename = "DetachKeys")]
#[serde(skip_serializing_if = "Option::is_none")]
pub detach_keys: Option<String>,
#[serde(rename = "Env")]
#[serde(skip_serializing_if = "Option::is_none")]
pub env: Option<Vec<String>>,
#[serde(rename = "Privileged")]
#[serde(skip_serializing_if = "Option::is_none")]
pub privileged: Option<bool>,
#[serde(rename = "Tty")]
#[serde(skip_serializing_if = "Option::is_none")]
pub tty: Option<bool>,
#[serde(rename = "User")]
#[serde(skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
#[serde(rename = "WorkingDir")]
#[serde(skip_serializing_if = "Option::is_none")]
pub working_dir: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerInspect200Response {
#[serde(rename = "AppArmorProfile")]
#[serde(skip_serializing_if = "Option::is_none")]
pub app_armor_profile: Option<String>,
#[serde(rename = "Args")]
#[serde(skip_serializing_if = "Option::is_none")]
pub args: Option<Vec<String>>,
#[serde(rename = "Config")]
pub config: Option<ContainerConfig>,
#[serde(rename = "Created")]
#[serde(skip_serializing_if = "Option::is_none")]
pub created: Option<String>,
#[serde(rename = "Driver")]
#[serde(skip_serializing_if = "Option::is_none")]
pub driver: Option<String>,
#[serde(rename = "ExecIDs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub exec_i_ds: Option<Vec<String>>,
#[serde(rename = "GraphDriver")]
pub graph_driver: Option<GraphDriverData>,
#[serde(rename = "HostConfig")]
pub host_config: Option<Value>,
#[serde(rename = "HostnamePath")]
#[serde(skip_serializing_if = "Option::is_none")]
pub hostname_path: Option<String>,
#[serde(rename = "HostsPath")]
#[serde(skip_serializing_if = "Option::is_none")]
pub hosts_path: Option<String>,
#[serde(rename = "Id")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "Image")]
#[serde(skip_serializing_if = "Option::is_none")]
pub image: Option<String>,
#[serde(rename = "LogPath")]
#[serde(skip_serializing_if = "Option::is_none")]
pub log_path: Option<String>,
#[serde(rename = "MountLabel")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mount_label: Option<String>,
#[serde(rename = "Mounts")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mounts: Option<Vec<MountPoint>>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "NetworkSettings")]
pub network_settings: Option<NetworkSettings>,
#[serde(rename = "Path")]
#[serde(skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
#[serde(rename = "Platform")]
#[serde(skip_serializing_if = "Option::is_none")]
pub platform: Option<String>,
#[serde(rename = "ProcessLabel")]
#[serde(skip_serializing_if = "Option::is_none")]
pub process_label: Option<String>,
#[serde(rename = "ResolvConfPath")]
#[serde(skip_serializing_if = "Option::is_none")]
pub resolv_conf_path: Option<String>,
#[serde(rename = "RestartCount")]
#[serde(skip_serializing_if = "Option::is_none")]
pub restart_count: Option<isize>,
#[serde(rename = "SizeRootFs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub size_root_fs: Option<i64>,
#[serde(rename = "SizeRw")]
#[serde(skip_serializing_if = "Option::is_none")]
pub size_rw: Option<i64>,
#[serde(rename = "State")]
pub state: Option<ContainerState>,
}
pub type ContainerList200Response = Vec<ContainerSummary>;
pub type ContainerLogs200Response = Vec<u8>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerPrune200Response {
#[serde(rename = "ContainersDeleted")]
#[serde(skip_serializing_if = "Option::is_none")]
pub containers_deleted: Option<Vec<String>>,
#[serde(rename = "SpaceReclaimed")]
#[serde(skip_serializing_if = "Option::is_none")]
pub space_reclaimed: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerState {
#[serde(rename = "Dead")]
#[serde(skip_serializing_if = "Option::is_none")]
pub dead: Option<bool>,
#[serde(rename = "Error")]
#[serde(skip_serializing_if = "Option::is_none")]
pub error: Option<String>,
#[serde(rename = "ExitCode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub exit_code: Option<isize>,
#[serde(rename = "FinishedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub finished_at: Option<String>,
#[serde(rename = "Health")]
pub health: Option<Health>,
#[serde(rename = "OOMKilled")]
#[serde(skip_serializing_if = "Option::is_none")]
pub oom_killed: Option<bool>,
#[serde(rename = "Paused")]
#[serde(skip_serializing_if = "Option::is_none")]
pub paused: Option<bool>,
#[serde(rename = "Pid")]
#[serde(skip_serializing_if = "Option::is_none")]
pub pid: Option<isize>,
#[serde(rename = "Restarting")]
#[serde(skip_serializing_if = "Option::is_none")]
pub restarting: Option<bool>,
#[serde(rename = "Running")]
#[serde(skip_serializing_if = "Option::is_none")]
pub running: Option<bool>,
#[serde(rename = "StartedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub started_at: Option<String>,
#[serde(rename = "Status")]
#[serde(skip_serializing_if = "Option::is_none")]
pub status: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ContainerStateStatusInlineItem {
#[serde(rename = "created")]
Created,
#[serde(rename = "running")]
Running,
#[serde(rename = "paused")]
Paused,
#[serde(rename = "restarting")]
Restarting,
#[serde(rename = "removing")]
Removing,
#[serde(rename = "exited")]
Exited,
#[serde(rename = "dead")]
Dead,
}
impl AsRef<str> for ContainerStateStatusInlineItem {
fn as_ref(&self) -> &str {
match self {
ContainerStateStatusInlineItem::Created => "created",
ContainerStateStatusInlineItem::Running => "running",
ContainerStateStatusInlineItem::Paused => "paused",
ContainerStateStatusInlineItem::Restarting => "restarting",
ContainerStateStatusInlineItem::Removing => "removing",
ContainerStateStatusInlineItem::Exited => "exited",
ContainerStateStatusInlineItem::Dead => "dead",
}
}
}
impl std::fmt::Display for ContainerStateStatusInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
pub type ContainerStats200Response = Value;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerSummary {
#[serde(rename = "Command")]
#[serde(skip_serializing_if = "Option::is_none")]
pub command: Option<String>,
#[serde(rename = "Created")]
#[serde(skip_serializing_if = "Option::is_none")]
pub created: Option<i64>,
#[serde(rename = "HostConfig")]
#[serde(skip_serializing_if = "Option::is_none")]
pub host_config: Option<ContainerSummaryHostConfigInlineItem>,
#[serde(rename = "Id")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "Image")]
#[serde(skip_serializing_if = "Option::is_none")]
pub image: Option<String>,
#[serde(rename = "ImageID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub image_id: Option<String>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Mounts")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mounts: Option<Vec<MountPoint>>,
#[serde(rename = "Names")]
#[serde(skip_serializing_if = "Option::is_none")]
pub names: Option<Vec<String>>,
#[serde(rename = "NetworkSettings")]
#[serde(skip_serializing_if = "Option::is_none")]
pub network_settings: Option<ContainerSummaryNetworkSettingsInlineItem>,
#[serde(rename = "Ports")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ports: Option<Vec<Port>>,
#[serde(rename = "SizeRootFs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub size_root_fs: Option<i64>,
#[serde(rename = "SizeRw")]
#[serde(skip_serializing_if = "Option::is_none")]
pub size_rw: Option<i64>,
#[serde(rename = "State")]
#[serde(skip_serializing_if = "Option::is_none")]
pub state: Option<String>,
#[serde(rename = "Status")]
#[serde(skip_serializing_if = "Option::is_none")]
pub status: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerSummaryHostConfigInlineItem {
#[serde(rename = "NetworkMode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub network_mode: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerSummaryNetworkSettingsInlineItem {
#[serde(rename = "Networks")]
#[serde(skip_serializing_if = "Option::is_none")]
pub networks: Option<HashMap<String, EndpointSettings>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerTop200Response {
#[serde(rename = "Processes")]
#[serde(skip_serializing_if = "Option::is_none")]
pub processes: Option<Vec<Vec<String>>>,
#[serde(rename = "Titles")]
#[serde(skip_serializing_if = "Option::is_none")]
pub titles: Option<Vec<String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerUpdate200Response {
#[serde(rename = "Warnings")]
#[serde(skip_serializing_if = "Option::is_none")]
pub warnings: Option<Vec<String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerUpdateUpdateParam {
#[serde(rename = "BlkioDeviceReadBps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_device_read_bps: Option<Vec<ThrottleDevice>>,
#[serde(rename = "BlkioDeviceReadIOps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_device_read_i_ops: Option<Vec<ThrottleDevice>>,
#[serde(rename = "BlkioDeviceWriteBps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_device_write_bps: Option<Vec<ThrottleDevice>>,
#[serde(rename = "BlkioDeviceWriteIOps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_device_write_i_ops: Option<Vec<ThrottleDevice>>,
#[serde(rename = "BlkioWeight")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_weight: Option<isize>,
#[serde(rename = "BlkioWeightDevice")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_weight_device: Option<Vec<ContainerUpdateUpdateParamBlkioWeightDeviceInlineItem>>,
#[serde(rename = "CgroupParent")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cgroup_parent: Option<String>,
#[serde(rename = "CpuCount")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_count: Option<i64>,
#[serde(rename = "CpuPercent")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_percent: Option<i64>,
#[serde(rename = "CpuPeriod")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_period: Option<i64>,
#[serde(rename = "CpuQuota")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_quota: Option<i64>,
#[serde(rename = "CpuRealtimePeriod")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_realtime_period: Option<i64>,
#[serde(rename = "CpuRealtimeRuntime")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_realtime_runtime: Option<i64>,
#[serde(rename = "CpuShares")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_shares: Option<isize>,
#[serde(rename = "CpusetCpus")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpuset_cpus: Option<String>,
#[serde(rename = "CpusetMems")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpuset_mems: Option<String>,
#[serde(rename = "DeviceCgroupRules")]
#[serde(skip_serializing_if = "Option::is_none")]
pub device_cgroup_rules: Option<Vec<String>>,
#[serde(rename = "DeviceRequests")]
#[serde(skip_serializing_if = "Option::is_none")]
pub device_requests: Option<Vec<DeviceRequest>>,
#[serde(rename = "Devices")]
#[serde(skip_serializing_if = "Option::is_none")]
pub devices: Option<Vec<DeviceMapping>>,
#[serde(rename = "IOMaximumBandwidth")]
#[serde(skip_serializing_if = "Option::is_none")]
pub io_maximum_bandwidth: Option<i64>,
#[serde(rename = "IOMaximumIOps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub io_maximum_i_ops: Option<i64>,
#[serde(rename = "Init")]
#[serde(skip_serializing_if = "Option::is_none")]
pub init: Option<bool>,
#[serde(rename = "KernelMemory")]
#[serde(skip_serializing_if = "Option::is_none")]
pub kernel_memory: Option<i64>,
#[serde(rename = "KernelMemoryTCP")]
#[serde(skip_serializing_if = "Option::is_none")]
pub kernel_memory_tcp: Option<i64>,
#[serde(rename = "Memory")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory: Option<i64>,
#[serde(rename = "MemoryReservation")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory_reservation: Option<i64>,
#[serde(rename = "MemorySwap")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory_swap: Option<i64>,
#[serde(rename = "MemorySwappiness")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory_swappiness: Option<i64>,
#[serde(rename = "NanoCpus")]
#[serde(skip_serializing_if = "Option::is_none")]
pub nano_cpus: Option<i64>,
#[serde(rename = "OomKillDisable")]
#[serde(skip_serializing_if = "Option::is_none")]
pub oom_kill_disable: Option<bool>,
#[serde(rename = "PidsLimit")]
#[serde(skip_serializing_if = "Option::is_none")]
pub pids_limit: Option<i64>,
#[serde(rename = "RestartPolicy")]
pub restart_policy: Option<RestartPolicy>,
#[serde(rename = "Ulimits")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ulimits: Option<Vec<ContainerUpdateUpdateParamUlimitsInlineItem>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerUpdateUpdateParamBlkioWeightDeviceInlineItem {
#[serde(rename = "Path")]
#[serde(skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
#[serde(rename = "Weight")]
#[serde(skip_serializing_if = "Option::is_none")]
pub weight: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerUpdateUpdateParamUlimitsInlineItem {
#[serde(rename = "Hard")]
#[serde(skip_serializing_if = "Option::is_none")]
pub hard: Option<isize>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Soft")]
#[serde(skip_serializing_if = "Option::is_none")]
pub soft: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerWaitExitError {
#[serde(rename = "Message")]
#[serde(skip_serializing_if = "Option::is_none")]
pub message: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ContainerWaitResponse {
#[serde(rename = "Error")]
pub error: Option<ContainerWaitExitError>,
#[serde(rename = "StatusCode")]
pub status_code: isize,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct CreateImageInfo {
#[serde(skip_serializing_if = "Option::is_none")]
pub error: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub progress: Option<String>,
#[serde(rename = "progressDetail")]
pub progress_detail: Option<ProgressDetail>,
#[serde(skip_serializing_if = "Option::is_none")]
pub status: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct DeviceMapping {
#[serde(rename = "CgroupPermissions")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cgroup_permissions: Option<String>,
#[serde(rename = "PathInContainer")]
#[serde(skip_serializing_if = "Option::is_none")]
pub path_in_container: Option<String>,
#[serde(rename = "PathOnHost")]
#[serde(skip_serializing_if = "Option::is_none")]
pub path_on_host: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct DeviceRequest {
#[serde(rename = "Capabilities")]
#[serde(skip_serializing_if = "Option::is_none")]
pub capabilities: Option<Vec<Vec<String>>>,
#[serde(rename = "Count")]
#[serde(skip_serializing_if = "Option::is_none")]
pub count: Option<isize>,
#[serde(rename = "DeviceIDs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub device_i_ds: Option<Vec<String>>,
#[serde(rename = "Driver")]
#[serde(skip_serializing_if = "Option::is_none")]
pub driver: Option<String>,
#[serde(rename = "Options")]
#[serde(skip_serializing_if = "Option::is_none")]
pub options: Option<HashMap<String, String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct DistributionInspect {
#[serde(rename = "Descriptor")]
pub descriptor: OciDescriptor,
#[serde(rename = "Platforms")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub platforms: Vec<OciPlatform>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Driver {
#[serde(rename = "Name")]
pub name: String,
#[serde(rename = "Options")]
#[serde(skip_serializing_if = "Option::is_none")]
pub options: Option<HashMap<String, String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct EndpointIpamConfig {
#[serde(rename = "IPv4Address")]
#[serde(skip_serializing_if = "Option::is_none")]
pub i_pv_4_address: Option<String>,
#[serde(rename = "IPv6Address")]
#[serde(skip_serializing_if = "Option::is_none")]
pub i_pv_6_address: Option<String>,
#[serde(rename = "LinkLocalIPs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub link_local_i_ps: Option<Vec<String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct EndpointPortConfig {
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Protocol")]
#[serde(skip_serializing_if = "Option::is_none")]
pub protocol: Option<String>,
#[serde(rename = "PublishMode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub publish_mode: Option<String>,
#[serde(rename = "PublishedPort")]
#[serde(skip_serializing_if = "Option::is_none")]
pub published_port: Option<isize>,
#[serde(rename = "TargetPort")]
#[serde(skip_serializing_if = "Option::is_none")]
pub target_port: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum EndpointPortConfigProtocolInlineItem {
#[serde(rename = "tcp")]
Tcp,
#[serde(rename = "udp")]
Udp,
#[serde(rename = "sctp")]
Sctp,
}
impl AsRef<str> for EndpointPortConfigProtocolInlineItem {
fn as_ref(&self) -> &str {
match self {
EndpointPortConfigProtocolInlineItem::Tcp => "tcp",
EndpointPortConfigProtocolInlineItem::Udp => "udp",
EndpointPortConfigProtocolInlineItem::Sctp => "sctp",
}
}
}
impl std::fmt::Display for EndpointPortConfigProtocolInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum EndpointPortConfigPublishModeInlineItem {
#[serde(rename = "ingress")]
Ingress,
#[serde(rename = "host")]
Host,
}
impl AsRef<str> for EndpointPortConfigPublishModeInlineItem {
fn as_ref(&self) -> &str {
match self {
EndpointPortConfigPublishModeInlineItem::Ingress => "ingress",
EndpointPortConfigPublishModeInlineItem::Host => "host",
}
}
}
impl std::fmt::Display for EndpointPortConfigPublishModeInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct EndpointSettings {
#[serde(rename = "Aliases")]
#[serde(skip_serializing_if = "Option::is_none")]
pub aliases: Option<Vec<String>>,
#[serde(rename = "DriverOpts")]
#[serde(skip_serializing_if = "Option::is_none")]
pub driver_opts: Option<HashMap<String, String>>,
#[serde(rename = "EndpointID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub endpoint_id: Option<String>,
#[serde(rename = "Gateway")]
#[serde(skip_serializing_if = "Option::is_none")]
pub gateway: Option<String>,
#[serde(rename = "GlobalIPv6Address")]
#[serde(skip_serializing_if = "Option::is_none")]
pub global_i_pv_6_address: Option<String>,
#[serde(rename = "GlobalIPv6PrefixLen")]
#[serde(skip_serializing_if = "Option::is_none")]
pub global_i_pv_6_prefix_len: Option<i64>,
#[serde(rename = "IPAMConfig")]
pub ipam_config: Option<EndpointIpamConfig>,
#[serde(rename = "IPAddress")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ip_address: Option<String>,
#[serde(rename = "IPPrefixLen")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ip_prefix_len: Option<isize>,
#[serde(rename = "IPv6Gateway")]
#[serde(skip_serializing_if = "Option::is_none")]
pub i_pv_6_gateway: Option<String>,
#[serde(rename = "Links")]
#[serde(skip_serializing_if = "Option::is_none")]
pub links: Option<Vec<String>>,
#[serde(rename = "MacAddress")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mac_address: Option<String>,
#[serde(rename = "NetworkID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub network_id: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct EndpointSpec {
#[serde(rename = "Mode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mode: Option<String>,
#[serde(rename = "Ports")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ports: Option<Vec<EndpointPortConfig>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum EndpointSpecModeInlineItem {
#[serde(rename = "vip")]
Vip,
#[serde(rename = "dnsrr")]
Dnsrr,
}
impl AsRef<str> for EndpointSpecModeInlineItem {
fn as_ref(&self) -> &str {
match self {
EndpointSpecModeInlineItem::Vip => "vip",
EndpointSpecModeInlineItem::Dnsrr => "dnsrr",
}
}
}
impl std::fmt::Display for EndpointSpecModeInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct EngineDescription {
#[serde(rename = "EngineVersion")]
#[serde(skip_serializing_if = "Option::is_none")]
pub engine_version: Option<String>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Plugins")]
#[serde(skip_serializing_if = "Option::is_none")]
pub plugins: Option<Vec<EngineDescriptionPluginsInlineItem>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct EngineDescriptionPluginsInlineItem {
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Type")]
#[serde(skip_serializing_if = "Option::is_none")]
pub type_: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ErrorDetail {
#[serde(skip_serializing_if = "Option::is_none")]
pub code: Option<isize>,
#[serde(skip_serializing_if = "Option::is_none")]
pub message: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ErrorResponse {
pub message: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct EventActor {
#[serde(rename = "Attributes")]
#[serde(skip_serializing_if = "Option::is_none")]
pub attributes: Option<HashMap<String, String>>,
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct EventMessage {
#[serde(rename = "Action")]
#[serde(skip_serializing_if = "Option::is_none")]
pub action: Option<String>,
#[serde(rename = "Actor")]
pub actor: Option<EventActor>,
#[serde(rename = "Type")]
#[serde(skip_serializing_if = "Option::is_none")]
pub type_: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub scope: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub time: Option<i64>,
#[serde(rename = "timeNano")]
#[serde(skip_serializing_if = "Option::is_none")]
pub time_nano: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum EventMessageTypeInlineItem {
#[serde(rename = "builder")]
Builder,
#[serde(rename = "config")]
Config,
#[serde(rename = "container")]
Container,
#[serde(rename = "daemon")]
Daemon,
#[serde(rename = "image")]
Image,
#[serde(rename = "network")]
Network,
#[serde(rename = "node")]
Node,
#[serde(rename = "plugin")]
Plugin,
#[serde(rename = "secret")]
Secret,
#[serde(rename = "service")]
Service,
#[serde(rename = "volume")]
Volume,
}
impl AsRef<str> for EventMessageTypeInlineItem {
fn as_ref(&self) -> &str {
match self {
EventMessageTypeInlineItem::Builder => "builder",
EventMessageTypeInlineItem::Config => "config",
EventMessageTypeInlineItem::Container => "container",
EventMessageTypeInlineItem::Daemon => "daemon",
EventMessageTypeInlineItem::Image => "image",
EventMessageTypeInlineItem::Network => "network",
EventMessageTypeInlineItem::Node => "node",
EventMessageTypeInlineItem::Plugin => "plugin",
EventMessageTypeInlineItem::Secret => "secret",
EventMessageTypeInlineItem::Service => "service",
EventMessageTypeInlineItem::Volume => "volume",
}
}
}
impl std::fmt::Display for EventMessageTypeInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum EventMessagescopeInlineItem {
#[serde(rename = "local")]
Local,
#[serde(rename = "swarm")]
Swarm,
}
impl AsRef<str> for EventMessagescopeInlineItem {
fn as_ref(&self) -> &str {
match self {
EventMessagescopeInlineItem::Local => "local",
EventMessagescopeInlineItem::Swarm => "swarm",
}
}
}
impl std::fmt::Display for EventMessagescopeInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ExecInspect200Response {
#[serde(rename = "CanRemove")]
#[serde(skip_serializing_if = "Option::is_none")]
pub can_remove: Option<bool>,
#[serde(rename = "ContainerID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub container_id: Option<String>,
#[serde(rename = "DetachKeys")]
#[serde(skip_serializing_if = "Option::is_none")]
pub detach_keys: Option<String>,
#[serde(rename = "ExitCode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub exit_code: Option<isize>,
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "OpenStderr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub open_stderr: Option<bool>,
#[serde(rename = "OpenStdin")]
#[serde(skip_serializing_if = "Option::is_none")]
pub open_stdin: Option<bool>,
#[serde(rename = "OpenStdout")]
#[serde(skip_serializing_if = "Option::is_none")]
pub open_stdout: Option<bool>,
#[serde(rename = "Pid")]
#[serde(skip_serializing_if = "Option::is_none")]
pub pid: Option<isize>,
#[serde(rename = "ProcessConfig")]
pub process_config: Option<ProcessConfig>,
#[serde(rename = "Running")]
#[serde(skip_serializing_if = "Option::is_none")]
pub running: Option<bool>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ExecStartExecStartConfigParam {
#[serde(rename = "Detach")]
#[serde(skip_serializing_if = "Option::is_none")]
pub detach: Option<bool>,
#[serde(rename = "Tty")]
#[serde(skip_serializing_if = "Option::is_none")]
pub tty: Option<bool>,
}
pub type GenericResources = Vec<GenericResourcesInlineItem>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct GenericResourcesInlineItem {
#[serde(rename = "DiscreteResourceSpec")]
#[serde(skip_serializing_if = "Option::is_none")]
pub discrete_resource_spec: Option<GenericResourcesInlineItemDiscreteResourceSpecInlineItem>,
#[serde(rename = "NamedResourceSpec")]
#[serde(skip_serializing_if = "Option::is_none")]
pub named_resource_spec: Option<GenericResourcesInlineItemNamedResourceSpecInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct GenericResourcesInlineItemDiscreteResourceSpecInlineItem {
#[serde(rename = "Kind")]
#[serde(skip_serializing_if = "Option::is_none")]
pub kind: Option<String>,
#[serde(rename = "Value")]
#[serde(skip_serializing_if = "Option::is_none")]
pub value: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct GenericResourcesInlineItemNamedResourceSpecInlineItem {
#[serde(rename = "Kind")]
#[serde(skip_serializing_if = "Option::is_none")]
pub kind: Option<String>,
#[serde(rename = "Value")]
#[serde(skip_serializing_if = "Option::is_none")]
pub value: Option<String>,
}
pub type GetPluginPrivileges200Response = Vec<PluginPrivilege>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct GraphDriverData {
#[serde(rename = "Data")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_map")]
pub data: HashMap<String, String>,
#[serde(rename = "Name")]
pub name: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Health {
#[serde(rename = "FailingStreak")]
#[serde(skip_serializing_if = "Option::is_none")]
pub failing_streak: Option<isize>,
#[serde(rename = "Log")]
#[serde(skip_serializing_if = "Option::is_none")]
pub log: Option<Vec<HealthcheckResult>>,
#[serde(rename = "Status")]
#[serde(skip_serializing_if = "Option::is_none")]
pub status: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct HealthConfig {
#[serde(rename = "Interval")]
#[serde(skip_serializing_if = "Option::is_none")]
pub interval: Option<isize>,
#[serde(rename = "Retries")]
#[serde(skip_serializing_if = "Option::is_none")]
pub retries: Option<isize>,
#[serde(rename = "StartPeriod")]
#[serde(skip_serializing_if = "Option::is_none")]
pub start_period: Option<isize>,
#[serde(rename = "Test")]
#[serde(skip_serializing_if = "Option::is_none")]
pub test: Option<Vec<String>>,
#[serde(rename = "Timeout")]
#[serde(skip_serializing_if = "Option::is_none")]
pub timeout: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum HealthStatusInlineItem {
#[serde(rename = "none")]
None,
#[serde(rename = "starting")]
Starting,
#[serde(rename = "healthy")]
Healthy,
#[serde(rename = "unhealthy")]
Unhealthy,
}
impl AsRef<str> for HealthStatusInlineItem {
fn as_ref(&self) -> &str {
match self {
HealthStatusInlineItem::None => "none",
HealthStatusInlineItem::Starting => "starting",
HealthStatusInlineItem::Healthy => "healthy",
HealthStatusInlineItem::Unhealthy => "unhealthy",
}
}
}
impl std::fmt::Display for HealthStatusInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct HealthcheckResult {
#[serde(rename = "End")]
#[serde(skip_serializing_if = "Option::is_none")]
pub end: Option<DateTime<Utc>>,
#[serde(rename = "ExitCode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub exit_code: Option<isize>,
#[serde(rename = "Output")]
#[serde(skip_serializing_if = "Option::is_none")]
pub output: Option<String>,
#[serde(rename = "Start")]
#[serde(skip_serializing_if = "Option::is_none")]
pub start: Option<DateTime<Utc>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct HistoryResponseItem {
#[serde(rename = "Comment")]
pub comment: String,
#[serde(rename = "Created")]
pub created: i64,
#[serde(rename = "CreatedBy")]
pub created_by: String,
#[serde(rename = "Id")]
pub id: String,
#[serde(rename = "Size")]
pub size: i64,
#[serde(rename = "Tags")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub tags: Vec<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct HostConfig {
#[serde(rename = "AutoRemove")]
#[serde(skip_serializing_if = "Option::is_none")]
pub auto_remove: Option<bool>,
#[serde(rename = "Binds")]
#[serde(skip_serializing_if = "Option::is_none")]
pub binds: Option<Vec<String>>,
#[serde(rename = "BlkioDeviceReadBps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_device_read_bps: Option<Vec<ThrottleDevice>>,
#[serde(rename = "BlkioDeviceReadIOps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_device_read_i_ops: Option<Vec<ThrottleDevice>>,
#[serde(rename = "BlkioDeviceWriteBps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_device_write_bps: Option<Vec<ThrottleDevice>>,
#[serde(rename = "BlkioDeviceWriteIOps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_device_write_i_ops: Option<Vec<ThrottleDevice>>,
#[serde(rename = "BlkioWeight")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_weight: Option<isize>,
#[serde(rename = "BlkioWeightDevice")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_weight_device: Option<Vec<HostConfigBlkioWeightDeviceInlineItem>>,
#[serde(rename = "CapAdd")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cap_add: Option<Vec<String>>,
#[serde(rename = "CapDrop")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cap_drop: Option<Vec<String>>,
#[serde(rename = "Cgroup")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cgroup: Option<String>,
#[serde(rename = "CgroupParent")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cgroup_parent: Option<String>,
#[serde(rename = "CgroupnsMode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cgroupns_mode: Option<String>,
#[serde(rename = "ConsoleSize")]
#[serde(skip_serializing_if = "Option::is_none")]
pub console_size: Option<Vec<isize>>,
#[serde(rename = "ContainerIDFile")]
#[serde(skip_serializing_if = "Option::is_none")]
pub container_id_file: Option<String>,
#[serde(rename = "CpuCount")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_count: Option<i64>,
#[serde(rename = "CpuPercent")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_percent: Option<i64>,
#[serde(rename = "CpuPeriod")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_period: Option<i64>,
#[serde(rename = "CpuQuota")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_quota: Option<i64>,
#[serde(rename = "CpuRealtimePeriod")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_realtime_period: Option<i64>,
#[serde(rename = "CpuRealtimeRuntime")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_realtime_runtime: Option<i64>,
#[serde(rename = "CpuShares")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_shares: Option<isize>,
#[serde(rename = "CpusetCpus")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpuset_cpus: Option<String>,
#[serde(rename = "CpusetMems")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpuset_mems: Option<String>,
#[serde(rename = "DeviceCgroupRules")]
#[serde(skip_serializing_if = "Option::is_none")]
pub device_cgroup_rules: Option<Vec<String>>,
#[serde(rename = "DeviceRequests")]
#[serde(skip_serializing_if = "Option::is_none")]
pub device_requests: Option<Vec<DeviceRequest>>,
#[serde(rename = "Devices")]
#[serde(skip_serializing_if = "Option::is_none")]
pub devices: Option<Vec<DeviceMapping>>,
#[serde(rename = "Dns")]
#[serde(skip_serializing_if = "Option::is_none")]
pub dns: Option<Vec<String>>,
#[serde(rename = "DnsOptions")]
#[serde(skip_serializing_if = "Option::is_none")]
pub dns_options: Option<Vec<String>>,
#[serde(rename = "DnsSearch")]
#[serde(skip_serializing_if = "Option::is_none")]
pub dns_search: Option<Vec<String>>,
#[serde(rename = "ExtraHosts")]
#[serde(skip_serializing_if = "Option::is_none")]
pub extra_hosts: Option<Vec<String>>,
#[serde(rename = "GroupAdd")]
#[serde(skip_serializing_if = "Option::is_none")]
pub group_add: Option<Vec<String>>,
#[serde(rename = "IOMaximumBandwidth")]
#[serde(skip_serializing_if = "Option::is_none")]
pub io_maximum_bandwidth: Option<i64>,
#[serde(rename = "IOMaximumIOps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub io_maximum_i_ops: Option<i64>,
#[serde(rename = "Init")]
#[serde(skip_serializing_if = "Option::is_none")]
pub init: Option<bool>,
#[serde(rename = "IpcMode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ipc_mode: Option<String>,
#[serde(rename = "Isolation")]
#[serde(skip_serializing_if = "Option::is_none")]
pub isolation: Option<String>,
#[serde(rename = "KernelMemory")]
#[serde(skip_serializing_if = "Option::is_none")]
pub kernel_memory: Option<i64>,
#[serde(rename = "KernelMemoryTCP")]
#[serde(skip_serializing_if = "Option::is_none")]
pub kernel_memory_tcp: Option<i64>,
#[serde(rename = "Links")]
#[serde(skip_serializing_if = "Option::is_none")]
pub links: Option<Vec<String>>,
#[serde(rename = "LogConfig")]
#[serde(skip_serializing_if = "Option::is_none")]
pub log_config: Option<HostConfigLogConfigInlineItem>,
#[serde(rename = "MaskedPaths")]
#[serde(skip_serializing_if = "Option::is_none")]
pub masked_paths: Option<Vec<String>>,
#[serde(rename = "Memory")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory: Option<i64>,
#[serde(rename = "MemoryReservation")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory_reservation: Option<i64>,
#[serde(rename = "MemorySwap")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory_swap: Option<i64>,
#[serde(rename = "MemorySwappiness")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory_swappiness: Option<i64>,
#[serde(rename = "Mounts")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mounts: Option<Vec<Mount>>,
#[serde(rename = "NanoCpus")]
#[serde(skip_serializing_if = "Option::is_none")]
pub nano_cpus: Option<i64>,
#[serde(rename = "NetworkMode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub network_mode: Option<String>,
#[serde(rename = "OomKillDisable")]
#[serde(skip_serializing_if = "Option::is_none")]
pub oom_kill_disable: Option<bool>,
#[serde(rename = "OomScoreAdj")]
#[serde(skip_serializing_if = "Option::is_none")]
pub oom_score_adj: Option<isize>,
#[serde(rename = "PidMode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub pid_mode: Option<String>,
#[serde(rename = "PidsLimit")]
#[serde(skip_serializing_if = "Option::is_none")]
pub pids_limit: Option<i64>,
#[serde(rename = "PortBindings")]
pub port_bindings: Option<PortMap>,
#[serde(rename = "Privileged")]
#[serde(skip_serializing_if = "Option::is_none")]
pub privileged: Option<bool>,
#[serde(rename = "PublishAllPorts")]
#[serde(skip_serializing_if = "Option::is_none")]
pub publish_all_ports: Option<bool>,
#[serde(rename = "ReadonlyPaths")]
#[serde(skip_serializing_if = "Option::is_none")]
pub readonly_paths: Option<Vec<String>>,
#[serde(rename = "ReadonlyRootfs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub readonly_rootfs: Option<bool>,
#[serde(rename = "RestartPolicy")]
pub restart_policy: Option<RestartPolicy>,
#[serde(rename = "Runtime")]
#[serde(skip_serializing_if = "Option::is_none")]
pub runtime: Option<String>,
#[serde(rename = "SecurityOpt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub security_opt: Option<Vec<String>>,
#[serde(rename = "ShmSize")]
#[serde(skip_serializing_if = "Option::is_none")]
pub shm_size: Option<isize>,
#[serde(rename = "StorageOpt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub storage_opt: Option<HashMap<String, String>>,
#[serde(rename = "Sysctls")]
#[serde(skip_serializing_if = "Option::is_none")]
pub sysctls: Option<HashMap<String, String>>,
#[serde(rename = "Tmpfs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub tmpfs: Option<HashMap<String, String>>,
#[serde(rename = "UTSMode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub uts_mode: Option<String>,
#[serde(rename = "Ulimits")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ulimits: Option<Vec<HostConfigUlimitsInlineItem>>,
#[serde(rename = "UsernsMode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub userns_mode: Option<String>,
#[serde(rename = "VolumeDriver")]
#[serde(skip_serializing_if = "Option::is_none")]
pub volume_driver: Option<String>,
#[serde(rename = "VolumesFrom")]
#[serde(skip_serializing_if = "Option::is_none")]
pub volumes_from: Option<Vec<String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct HostConfigBlkioWeightDeviceInlineItem {
#[serde(rename = "Path")]
#[serde(skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
#[serde(rename = "Weight")]
#[serde(skip_serializing_if = "Option::is_none")]
pub weight: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum HostConfigCgroupnsModeInlineItem {
#[serde(rename = "private")]
Private,
#[serde(rename = "host")]
Host,
}
impl AsRef<str> for HostConfigCgroupnsModeInlineItem {
fn as_ref(&self) -> &str {
match self {
HostConfigCgroupnsModeInlineItem::Private => "private",
HostConfigCgroupnsModeInlineItem::Host => "host",
}
}
}
impl std::fmt::Display for HostConfigCgroupnsModeInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum HostConfigIsolationInlineItem {
#[serde(rename = "default")]
Default,
#[serde(rename = "process")]
Process,
#[serde(rename = "hyperv")]
Hyperv,
}
impl AsRef<str> for HostConfigIsolationInlineItem {
fn as_ref(&self) -> &str {
match self {
HostConfigIsolationInlineItem::Default => "default",
HostConfigIsolationInlineItem::Process => "process",
HostConfigIsolationInlineItem::Hyperv => "hyperv",
}
}
}
impl std::fmt::Display for HostConfigIsolationInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct HostConfigLogConfigInlineItem {
#[serde(rename = "Config")]
#[serde(skip_serializing_if = "Option::is_none")]
pub config: Option<HashMap<String, String>>,
#[serde(rename = "Type")]
#[serde(skip_serializing_if = "Option::is_none")]
pub type_: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum HostConfigLogConfigInlineItemTypeInlineItem {
#[serde(rename = "json-file")]
JsonFile,
#[serde(rename = "syslog")]
Syslog,
#[serde(rename = "journald")]
Journald,
#[serde(rename = "gelf")]
Gelf,
#[serde(rename = "fluentd")]
Fluentd,
#[serde(rename = "awslogs")]
Awslogs,
#[serde(rename = "splunk")]
Splunk,
#[serde(rename = "etwlogs")]
Etwlogs,
#[serde(rename = "none")]
None,
}
impl AsRef<str> for HostConfigLogConfigInlineItemTypeInlineItem {
fn as_ref(&self) -> &str {
match self {
HostConfigLogConfigInlineItemTypeInlineItem::JsonFile => "json-file",
HostConfigLogConfigInlineItemTypeInlineItem::Syslog => "syslog",
HostConfigLogConfigInlineItemTypeInlineItem::Journald => "journald",
HostConfigLogConfigInlineItemTypeInlineItem::Gelf => "gelf",
HostConfigLogConfigInlineItemTypeInlineItem::Fluentd => "fluentd",
HostConfigLogConfigInlineItemTypeInlineItem::Awslogs => "awslogs",
HostConfigLogConfigInlineItemTypeInlineItem::Splunk => "splunk",
HostConfigLogConfigInlineItemTypeInlineItem::Etwlogs => "etwlogs",
HostConfigLogConfigInlineItemTypeInlineItem::None => "none",
}
}
}
impl std::fmt::Display for HostConfigLogConfigInlineItemTypeInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct HostConfigUlimitsInlineItem {
#[serde(rename = "Hard")]
#[serde(skip_serializing_if = "Option::is_none")]
pub hard: Option<isize>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Soft")]
#[serde(skip_serializing_if = "Option::is_none")]
pub soft: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Ipam {
#[serde(rename = "Config")]
#[serde(skip_serializing_if = "Option::is_none")]
pub config: Option<Vec<IpamConfig>>,
#[serde(rename = "Driver")]
#[serde(skip_serializing_if = "Option::is_none")]
pub driver: Option<String>,
#[serde(rename = "Options")]
#[serde(skip_serializing_if = "Option::is_none")]
pub options: Option<HashMap<String, String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct IpamConfig {
#[serde(rename = "AuxiliaryAddresses")]
#[serde(skip_serializing_if = "Option::is_none")]
pub auxiliary_addresses: Option<HashMap<String, String>>,
#[serde(rename = "Gateway")]
#[serde(skip_serializing_if = "Option::is_none")]
pub gateway: Option<String>,
#[serde(rename = "IPRange")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ip_range: Option<String>,
#[serde(rename = "Subnet")]
#[serde(skip_serializing_if = "Option::is_none")]
pub subnet: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct IdResponse {
#[serde(rename = "Id")]
pub id: String,
}
pub type ImageBuildInputStreamParam = Vec<u8>;
pub type ImageCreateInputImageParam = String;
pub type ImageDelete200Response = Vec<ImageDeleteResponseItem>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ImageDeleteResponseItem {
#[serde(rename = "Deleted")]
#[serde(skip_serializing_if = "Option::is_none")]
pub deleted: Option<String>,
#[serde(rename = "Untagged")]
#[serde(skip_serializing_if = "Option::is_none")]
pub untagged: Option<String>,
}
pub type ImageGet200Response = Vec<u8>;
pub type ImageGetAll200Response = Vec<u8>;
pub type ImageHistory200Response = Vec<HistoryResponseItem>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ImageId {
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ImageInspect {
#[serde(rename = "Architecture")]
#[serde(skip_serializing_if = "Option::is_none")]
pub architecture: Option<String>,
#[serde(rename = "Author")]
#[serde(skip_serializing_if = "Option::is_none")]
pub author: Option<String>,
#[serde(rename = "Comment")]
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
#[serde(rename = "Config")]
pub config: Option<ContainerConfig>,
#[serde(rename = "Container")]
#[serde(skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(rename = "ContainerConfig")]
pub container_config: Option<ContainerConfig>,
#[serde(rename = "Created")]
#[serde(skip_serializing_if = "Option::is_none")]
pub created: Option<String>,
#[serde(rename = "DockerVersion")]
#[serde(skip_serializing_if = "Option::is_none")]
pub docker_version: Option<String>,
#[serde(rename = "GraphDriver")]
pub graph_driver: Option<GraphDriverData>,
#[serde(rename = "Id")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "Metadata")]
#[serde(skip_serializing_if = "Option::is_none")]
pub metadata: Option<ImageInspectMetadataInlineItem>,
#[serde(rename = "Os")]
#[serde(skip_serializing_if = "Option::is_none")]
pub os: Option<String>,
#[serde(rename = "OsVersion")]
#[serde(skip_serializing_if = "Option::is_none")]
pub os_version: Option<String>,
#[serde(rename = "Parent")]
#[serde(skip_serializing_if = "Option::is_none")]
pub parent: Option<String>,
#[serde(rename = "RepoDigests")]
#[serde(skip_serializing_if = "Option::is_none")]
pub repo_digests: Option<Vec<String>>,
#[serde(rename = "RepoTags")]
#[serde(skip_serializing_if = "Option::is_none")]
pub repo_tags: Option<Vec<String>>,
#[serde(rename = "RootFS")]
#[serde(skip_serializing_if = "Option::is_none")]
pub root_fs: Option<ImageInspectRootFsInlineItem>,
#[serde(rename = "Size")]
#[serde(skip_serializing_if = "Option::is_none")]
pub size: Option<i64>,
#[serde(rename = "Variant")]
#[serde(skip_serializing_if = "Option::is_none")]
pub variant: Option<String>,
#[serde(rename = "VirtualSize")]
#[serde(skip_serializing_if = "Option::is_none")]
pub virtual_size: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ImageInspectMetadataInlineItem {
#[serde(rename = "LastTagTime")]
#[serde(skip_serializing_if = "Option::is_none")]
pub last_tag_time: Option<DateTime<Utc>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ImageInspectRootFsInlineItem {
#[serde(rename = "Layers")]
#[serde(skip_serializing_if = "Option::is_none")]
pub layers: Option<Vec<String>>,
#[serde(rename = "Type")]
pub type_: String,
}
pub type ImageList200Response = Vec<ImageSummary>;
pub type ImageLoadImagesTarballParam = Vec<u8>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ImagePrune200Response {
#[serde(rename = "ImagesDeleted")]
#[serde(skip_serializing_if = "Option::is_none")]
pub images_deleted: Option<Vec<ImageDeleteResponseItem>>,
#[serde(rename = "SpaceReclaimed")]
#[serde(skip_serializing_if = "Option::is_none")]
pub space_reclaimed: Option<i64>,
}
pub type ImageSearch200Response = Vec<ImageSearchResponseItem>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ImageSearchResponseItem {
#[serde(skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub is_automated: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub is_official: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub star_count: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ImageSummary {
#[serde(rename = "Containers")]
pub containers: isize,
#[serde(rename = "Created")]
pub created: isize,
#[serde(rename = "Id")]
pub id: String,
#[serde(rename = "Labels")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_map")]
pub labels: HashMap<String, String>,
#[serde(rename = "ParentId")]
pub parent_id: String,
#[serde(rename = "RepoDigests")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub repo_digests: Vec<String>,
#[serde(rename = "RepoTags")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub repo_tags: Vec<String>,
#[serde(rename = "SharedSize")]
pub shared_size: isize,
#[serde(rename = "Size")]
pub size: i64,
#[serde(rename = "VirtualSize")]
pub virtual_size: i64,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct IndexInfo {
#[serde(rename = "Mirrors")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mirrors: Option<Vec<String>>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Official")]
#[serde(skip_serializing_if = "Option::is_none")]
pub official: Option<bool>,
#[serde(rename = "Secure")]
#[serde(skip_serializing_if = "Option::is_none")]
pub secure: Option<bool>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct JoinTokens {
#[serde(rename = "Manager")]
#[serde(skip_serializing_if = "Option::is_none")]
pub manager: Option<String>,
#[serde(rename = "Worker")]
#[serde(skip_serializing_if = "Option::is_none")]
pub worker: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Limit {
#[serde(rename = "MemoryBytes")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory_bytes: Option<i64>,
#[serde(rename = "NanoCPUs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub nano_cp_us: Option<i64>,
#[serde(rename = "Pids")]
#[serde(skip_serializing_if = "Option::is_none")]
pub pids: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum LocalNodeState {
#[serde(rename = "")]
Empty,
#[serde(rename = "inactive")]
Inactive,
#[serde(rename = "pending")]
Pending,
#[serde(rename = "active")]
Active,
#[serde(rename = "error")]
Error,
#[serde(rename = "locked")]
Locked,
}
impl AsRef<str> for LocalNodeState {
fn as_ref(&self) -> &str {
match self {
LocalNodeState::Empty => "",
LocalNodeState::Inactive => "inactive",
LocalNodeState::Pending => "pending",
LocalNodeState::Active => "active",
LocalNodeState::Error => "error",
LocalNodeState::Locked => "locked",
}
}
}
impl std::fmt::Display for LocalNodeState {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ManagerStatus {
#[serde(rename = "Addr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub addr: Option<String>,
#[serde(rename = "Leader")]
#[serde(skip_serializing_if = "Option::is_none")]
pub leader: Option<bool>,
#[serde(rename = "Reachability")]
pub reachability: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Mount {
#[serde(rename = "BindOptions")]
#[serde(skip_serializing_if = "Option::is_none")]
pub bind_options: Option<MountBindOptionsInlineItem>,
#[serde(rename = "Consistency")]
#[serde(skip_serializing_if = "Option::is_none")]
pub consistency: Option<String>,
#[serde(rename = "ReadOnly")]
#[serde(skip_serializing_if = "Option::is_none")]
pub read_only: Option<bool>,
#[serde(rename = "Source")]
#[serde(skip_serializing_if = "Option::is_none")]
pub source: Option<String>,
#[serde(rename = "Target")]
#[serde(skip_serializing_if = "Option::is_none")]
pub target: Option<String>,
#[serde(rename = "TmpfsOptions")]
#[serde(skip_serializing_if = "Option::is_none")]
pub tmpfs_options: Option<MountTmpfsOptionsInlineItem>,
#[serde(rename = "Type")]
#[serde(skip_serializing_if = "Option::is_none")]
pub type_: Option<String>,
#[serde(rename = "VolumeOptions")]
#[serde(skip_serializing_if = "Option::is_none")]
pub volume_options: Option<MountVolumeOptionsInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct MountBindOptionsInlineItem {
#[serde(rename = "NonRecursive")]
#[serde(skip_serializing_if = "Option::is_none")]
pub non_recursive: Option<bool>,
#[serde(rename = "Propagation")]
#[serde(skip_serializing_if = "Option::is_none")]
pub propagation: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum MountBindOptionsInlineItemPropagationInlineItem {
#[serde(rename = "private")]
Private,
#[serde(rename = "rprivate")]
Rprivate,
#[serde(rename = "shared")]
Shared,
#[serde(rename = "rshared")]
Rshared,
#[serde(rename = "slave")]
Slave,
#[serde(rename = "rslave")]
Rslave,
}
impl AsRef<str> for MountBindOptionsInlineItemPropagationInlineItem {
fn as_ref(&self) -> &str {
match self {
MountBindOptionsInlineItemPropagationInlineItem::Private => "private",
MountBindOptionsInlineItemPropagationInlineItem::Rprivate => "rprivate",
MountBindOptionsInlineItemPropagationInlineItem::Shared => "shared",
MountBindOptionsInlineItemPropagationInlineItem::Rshared => "rshared",
MountBindOptionsInlineItemPropagationInlineItem::Slave => "slave",
MountBindOptionsInlineItemPropagationInlineItem::Rslave => "rslave",
}
}
}
impl std::fmt::Display for MountBindOptionsInlineItemPropagationInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct MountPoint {
#[serde(rename = "Destination")]
#[serde(skip_serializing_if = "Option::is_none")]
pub destination: Option<String>,
#[serde(rename = "Driver")]
#[serde(skip_serializing_if = "Option::is_none")]
pub driver: Option<String>,
#[serde(rename = "Mode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mode: Option<String>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Propagation")]
#[serde(skip_serializing_if = "Option::is_none")]
pub propagation: Option<String>,
#[serde(rename = "RW")]
#[serde(skip_serializing_if = "Option::is_none")]
pub rw: Option<bool>,
#[serde(rename = "Source")]
#[serde(skip_serializing_if = "Option::is_none")]
pub source: Option<String>,
#[serde(rename = "Type")]
#[serde(skip_serializing_if = "Option::is_none")]
pub type_: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum MountPointTypeInlineItem {
#[serde(rename = "bind")]
Bind,
#[serde(rename = "volume")]
Volume,
#[serde(rename = "tmpfs")]
Tmpfs,
#[serde(rename = "npipe")]
Npipe,
}
impl AsRef<str> for MountPointTypeInlineItem {
fn as_ref(&self) -> &str {
match self {
MountPointTypeInlineItem::Bind => "bind",
MountPointTypeInlineItem::Volume => "volume",
MountPointTypeInlineItem::Tmpfs => "tmpfs",
MountPointTypeInlineItem::Npipe => "npipe",
}
}
}
impl std::fmt::Display for MountPointTypeInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct MountTmpfsOptionsInlineItem {
#[serde(rename = "Mode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mode: Option<isize>,
#[serde(rename = "SizeBytes")]
#[serde(skip_serializing_if = "Option::is_none")]
pub size_bytes: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum MountTypeInlineItem {
#[serde(rename = "bind")]
Bind,
#[serde(rename = "volume")]
Volume,
#[serde(rename = "tmpfs")]
Tmpfs,
#[serde(rename = "npipe")]
Npipe,
}
impl AsRef<str> for MountTypeInlineItem {
fn as_ref(&self) -> &str {
match self {
MountTypeInlineItem::Bind => "bind",
MountTypeInlineItem::Volume => "volume",
MountTypeInlineItem::Tmpfs => "tmpfs",
MountTypeInlineItem::Npipe => "npipe",
}
}
}
impl std::fmt::Display for MountTypeInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct MountVolumeOptionsInlineItem {
#[serde(rename = "DriverConfig")]
#[serde(skip_serializing_if = "Option::is_none")]
pub driver_config: Option<MountVolumeOptionsInlineItemDriverConfigInlineItem>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "NoCopy")]
#[serde(skip_serializing_if = "Option::is_none")]
pub no_copy: Option<bool>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct MountVolumeOptionsInlineItemDriverConfigInlineItem {
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Options")]
#[serde(skip_serializing_if = "Option::is_none")]
pub options: Option<HashMap<String, String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Network {
#[serde(rename = "Attachable")]
#[serde(skip_serializing_if = "Option::is_none")]
pub attachable: Option<bool>,
#[serde(rename = "Containers")]
#[serde(skip_serializing_if = "Option::is_none")]
pub containers: Option<HashMap<String, NetworkContainer>>,
#[serde(rename = "Created")]
#[serde(skip_serializing_if = "Option::is_none")]
pub created: Option<DateTime<Utc>>,
#[serde(rename = "Driver")]
#[serde(skip_serializing_if = "Option::is_none")]
pub driver: Option<String>,
#[serde(rename = "EnableIPv6")]
#[serde(skip_serializing_if = "Option::is_none")]
pub enable_i_pv_6: Option<bool>,
#[serde(rename = "IPAM")]
pub ipam: Option<Ipam>,
#[serde(rename = "Id")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "Ingress")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ingress: Option<bool>,
#[serde(rename = "Internal")]
#[serde(skip_serializing_if = "Option::is_none")]
pub internal: Option<bool>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Options")]
#[serde(skip_serializing_if = "Option::is_none")]
pub options: Option<HashMap<String, String>>,
#[serde(rename = "Scope")]
#[serde(skip_serializing_if = "Option::is_none")]
pub scope: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct NetworkAttachmentConfig {
#[serde(rename = "Aliases")]
#[serde(skip_serializing_if = "Option::is_none")]
pub aliases: Option<Vec<String>>,
#[serde(rename = "DriverOpts")]
#[serde(skip_serializing_if = "Option::is_none")]
pub driver_opts: Option<HashMap<String, String>>,
#[serde(rename = "Target")]
#[serde(skip_serializing_if = "Option::is_none")]
pub target: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct NetworkConnectContainerParam {
#[serde(rename = "Container")]
#[serde(skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(rename = "EndpointConfig")]
pub endpoint_config: Option<EndpointSettings>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct NetworkContainer {
#[serde(rename = "EndpointID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub endpoint_id: Option<String>,
#[serde(rename = "IPv4Address")]
#[serde(skip_serializing_if = "Option::is_none")]
pub i_pv_4_address: Option<String>,
#[serde(rename = "IPv6Address")]
#[serde(skip_serializing_if = "Option::is_none")]
pub i_pv_6_address: Option<String>,
#[serde(rename = "MacAddress")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mac_address: Option<String>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct NetworkCreate201Response {
#[serde(rename = "Id")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "Warning")]
#[serde(skip_serializing_if = "Option::is_none")]
pub warning: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct NetworkCreateNetworkConfigParam {
#[serde(rename = "Attachable")]
#[serde(skip_serializing_if = "Option::is_none")]
pub attachable: Option<bool>,
#[serde(rename = "CheckDuplicate")]
#[serde(skip_serializing_if = "Option::is_none")]
pub check_duplicate: Option<bool>,
#[serde(rename = "Driver")]
#[serde(skip_serializing_if = "Option::is_none")]
pub driver: Option<String>,
#[serde(rename = "EnableIPv6")]
#[serde(skip_serializing_if = "Option::is_none")]
pub enable_i_pv_6: Option<bool>,
#[serde(rename = "IPAM")]
pub ipam: Option<Ipam>,
#[serde(rename = "Ingress")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ingress: Option<bool>,
#[serde(rename = "Internal")]
#[serde(skip_serializing_if = "Option::is_none")]
pub internal: Option<bool>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Name")]
pub name: String,
#[serde(rename = "Options")]
#[serde(skip_serializing_if = "Option::is_none")]
pub options: Option<HashMap<String, String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct NetworkDisconnectContainerParam {
#[serde(rename = "Container")]
#[serde(skip_serializing_if = "Option::is_none")]
pub container: Option<String>,
#[serde(rename = "Force")]
#[serde(skip_serializing_if = "Option::is_none")]
pub force: Option<bool>,
}
pub type NetworkList200Response = Vec<Network>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct NetworkPrune200Response {
#[serde(rename = "NetworksDeleted")]
#[serde(skip_serializing_if = "Option::is_none")]
pub networks_deleted: Option<Vec<String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct NetworkSettings {
#[serde(rename = "Bridge")]
#[serde(skip_serializing_if = "Option::is_none")]
pub bridge: Option<String>,
#[serde(rename = "EndpointID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub endpoint_id: Option<String>,
#[serde(rename = "Gateway")]
#[serde(skip_serializing_if = "Option::is_none")]
pub gateway: Option<String>,
#[serde(rename = "GlobalIPv6Address")]
#[serde(skip_serializing_if = "Option::is_none")]
pub global_i_pv_6_address: Option<String>,
#[serde(rename = "GlobalIPv6PrefixLen")]
#[serde(skip_serializing_if = "Option::is_none")]
pub global_i_pv_6_prefix_len: Option<isize>,
#[serde(rename = "HairpinMode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub hairpin_mode: Option<bool>,
#[serde(rename = "IPAddress")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ip_address: Option<String>,
#[serde(rename = "IPPrefixLen")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ip_prefix_len: Option<isize>,
#[serde(rename = "IPv6Gateway")]
#[serde(skip_serializing_if = "Option::is_none")]
pub i_pv_6_gateway: Option<String>,
#[serde(rename = "LinkLocalIPv6Address")]
#[serde(skip_serializing_if = "Option::is_none")]
pub link_local_i_pv_6_address: Option<String>,
#[serde(rename = "LinkLocalIPv6PrefixLen")]
#[serde(skip_serializing_if = "Option::is_none")]
pub link_local_i_pv_6_prefix_len: Option<isize>,
#[serde(rename = "MacAddress")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mac_address: Option<String>,
#[serde(rename = "Networks")]
#[serde(skip_serializing_if = "Option::is_none")]
pub networks: Option<HashMap<String, EndpointSettings>>,
#[serde(rename = "Ports")]
pub ports: Option<PortMap>,
#[serde(rename = "SandboxID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub sandbox_id: Option<String>,
#[serde(rename = "SandboxKey")]
#[serde(skip_serializing_if = "Option::is_none")]
pub sandbox_key: Option<String>,
#[serde(rename = "SecondaryIPAddresses")]
#[serde(skip_serializing_if = "Option::is_none")]
pub secondary_ip_addresses: Option<Vec<Address>>,
#[serde(rename = "SecondaryIPv6Addresses")]
#[serde(skip_serializing_if = "Option::is_none")]
pub secondary_i_pv_6_addresses: Option<Vec<Address>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct NetworkingConfig {
#[serde(rename = "EndpointsConfig")]
#[serde(skip_serializing_if = "Option::is_none")]
pub endpoints_config: Option<HashMap<String, EndpointSettings>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Node {
#[serde(rename = "CreatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub created_at: Option<DateTime<Utc>>,
#[serde(rename = "Description")]
pub description: Option<NodeDescription>,
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "ManagerStatus")]
pub manager_status: Option<ManagerStatus>,
#[serde(rename = "Spec")]
pub spec: Option<NodeSpec>,
#[serde(rename = "Status")]
pub status: Option<NodeStatus>,
#[serde(rename = "UpdatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_at: Option<DateTime<Utc>>,
#[serde(rename = "Version")]
pub version: Option<ObjectVersion>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct NodeDescription {
#[serde(rename = "Engine")]
pub engine: Option<EngineDescription>,
#[serde(rename = "Hostname")]
#[serde(skip_serializing_if = "Option::is_none")]
pub hostname: Option<String>,
#[serde(rename = "Platform")]
pub platform: Option<Platform>,
#[serde(rename = "Resources")]
pub resources: Option<ResourceObject>,
#[serde(rename = "TLSInfo")]
pub tls_info: Option<TlsInfo>,
}
pub type NodeList200Response = Vec<Node>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct NodeSpec {
#[serde(rename = "Availability")]
#[serde(skip_serializing_if = "Option::is_none")]
pub availability: Option<String>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Role")]
#[serde(skip_serializing_if = "Option::is_none")]
pub role: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum NodeSpecAvailabilityInlineItem {
#[serde(rename = "active")]
Active,
#[serde(rename = "pause")]
Pause,
#[serde(rename = "drain")]
Drain,
}
impl AsRef<str> for NodeSpecAvailabilityInlineItem {
fn as_ref(&self) -> &str {
match self {
NodeSpecAvailabilityInlineItem::Active => "active",
NodeSpecAvailabilityInlineItem::Pause => "pause",
NodeSpecAvailabilityInlineItem::Drain => "drain",
}
}
}
impl std::fmt::Display for NodeSpecAvailabilityInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum NodeSpecRoleInlineItem {
#[serde(rename = "worker")]
Worker,
#[serde(rename = "manager")]
Manager,
}
impl AsRef<str> for NodeSpecRoleInlineItem {
fn as_ref(&self) -> &str {
match self {
NodeSpecRoleInlineItem::Worker => "worker",
NodeSpecRoleInlineItem::Manager => "manager",
}
}
}
impl std::fmt::Display for NodeSpecRoleInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum NodeState {
#[serde(rename = "unknown")]
Unknown,
#[serde(rename = "down")]
Down,
#[serde(rename = "ready")]
Ready,
#[serde(rename = "disconnected")]
Disconnected,
}
impl AsRef<str> for NodeState {
fn as_ref(&self) -> &str {
match self {
NodeState::Unknown => "unknown",
NodeState::Down => "down",
NodeState::Ready => "ready",
NodeState::Disconnected => "disconnected",
}
}
}
impl std::fmt::Display for NodeState {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct NodeStatus {
#[serde(rename = "Addr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub addr: Option<String>,
#[serde(rename = "Message")]
#[serde(skip_serializing_if = "Option::is_none")]
pub message: Option<String>,
#[serde(rename = "State")]
pub state: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct OciDescriptor {
#[serde(skip_serializing_if = "Option::is_none")]
pub digest: Option<String>,
#[serde(rename = "mediaType")]
#[serde(skip_serializing_if = "Option::is_none")]
pub media_type: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub size: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct OciPlatform {
#[serde(skip_serializing_if = "Option::is_none")]
pub architecture: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub os: Option<String>,
#[serde(rename = "os.features")]
#[serde(skip_serializing_if = "Option::is_none")]
pub os_features: Option<Vec<String>>,
#[serde(rename = "os.version")]
#[serde(skip_serializing_if = "Option::is_none")]
pub os_version: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub variant: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ObjectVersion {
#[serde(rename = "Index")]
#[serde(skip_serializing_if = "Option::is_none")]
pub index: Option<u64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PeerNode {
#[serde(rename = "Addr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub addr: Option<String>,
#[serde(rename = "NodeID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub node_id: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Platform {
#[serde(rename = "Architecture")]
#[serde(skip_serializing_if = "Option::is_none")]
pub architecture: Option<String>,
#[serde(rename = "OS")]
#[serde(skip_serializing_if = "Option::is_none")]
pub os: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Plugin {
#[serde(rename = "Config")]
pub config: PluginConfigInlineItem,
#[serde(rename = "Enabled")]
pub enabled: bool,
#[serde(rename = "Id")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "Name")]
pub name: String,
#[serde(rename = "PluginReference")]
#[serde(skip_serializing_if = "Option::is_none")]
pub plugin_reference: Option<String>,
#[serde(rename = "Settings")]
pub settings: PluginSettingsInlineItem,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginConfigInlineItem {
#[serde(rename = "Args")]
pub args: PluginConfigInlineItemArgsInlineItem,
#[serde(rename = "Description")]
pub description: String,
#[serde(rename = "DockerVersion")]
#[serde(skip_serializing_if = "Option::is_none")]
pub docker_version: Option<String>,
#[serde(rename = "Documentation")]
pub documentation: String,
#[serde(rename = "Entrypoint")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub entrypoint: Vec<String>,
#[serde(rename = "Env")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub env: Vec<PluginEnv>,
#[serde(rename = "Interface")]
pub interface: PluginConfigInlineItemInterfaceInlineItem,
#[serde(rename = "IpcHost")]
pub ipc_host: bool,
#[serde(rename = "Linux")]
pub linux: PluginConfigInlineItemLinuxInlineItem,
#[serde(rename = "Mounts")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub mounts: Vec<PluginMount>,
#[serde(rename = "Network")]
pub network: PluginConfigInlineItemNetworkInlineItem,
#[serde(rename = "PidHost")]
pub pid_host: bool,
#[serde(rename = "PropagatedMount")]
pub propagated_mount: String,
#[serde(rename = "User")]
#[serde(skip_serializing_if = "Option::is_none")]
pub user: Option<PluginConfigInlineItemUserInlineItem>,
#[serde(rename = "WorkDir")]
pub work_dir: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub rootfs: Option<PluginConfigInlineItemrootfsInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginConfigInlineItemArgsInlineItem {
#[serde(rename = "Description")]
pub description: String,
#[serde(rename = "Name")]
pub name: String,
#[serde(rename = "Settable")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub settable: Vec<String>,
#[serde(rename = "Value")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub value: Vec<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginConfigInlineItemInterfaceInlineItem {
#[serde(rename = "ProtocolScheme")]
#[serde(skip_serializing_if = "Option::is_none")]
pub protocol_scheme: Option<String>,
#[serde(rename = "Socket")]
pub socket: String,
#[serde(rename = "Types")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub types: Vec<PluginInterfaceType>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum PluginConfigInlineItemInterfaceInlineItemProtocolSchemeInlineItem {
#[serde(rename = "")]
Empty,
#[serde(rename = "moby.plugins.http/v1")]
MobyPluginsHttpV1,
}
impl AsRef<str> for PluginConfigInlineItemInterfaceInlineItemProtocolSchemeInlineItem {
fn as_ref(&self) -> &str {
match self {
PluginConfigInlineItemInterfaceInlineItemProtocolSchemeInlineItem::Empty => "",
PluginConfigInlineItemInterfaceInlineItemProtocolSchemeInlineItem::MobyPluginsHttpV1 => "moby.plugins.http/v1",
}
}
}
impl std::fmt::Display for PluginConfigInlineItemInterfaceInlineItemProtocolSchemeInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginConfigInlineItemLinuxInlineItem {
#[serde(rename = "AllowAllDevices")]
pub allow_all_devices: bool,
#[serde(rename = "Capabilities")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub capabilities: Vec<String>,
#[serde(rename = "Devices")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub devices: Vec<PluginDevice>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginConfigInlineItemNetworkInlineItem {
#[serde(rename = "Type")]
pub type_: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginConfigInlineItemUserInlineItem {
#[serde(rename = "GID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub gid: Option<u32>,
#[serde(rename = "UID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub uid: Option<u32>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginConfigInlineItemrootfsInlineItem {
#[serde(skip_serializing_if = "Option::is_none")]
pub diff_ids: Option<Vec<String>>,
#[serde(rename = "type")]
#[serde(skip_serializing_if = "Option::is_none")]
pub type_: Option<String>,
}
pub type PluginCreateTarContextParam = Vec<u8>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginDevice {
#[serde(rename = "Description")]
pub description: String,
#[serde(rename = "Name")]
pub name: String,
#[serde(rename = "Path")]
pub path: String,
#[serde(rename = "Settable")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub settable: Vec<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginEnv {
#[serde(rename = "Description")]
pub description: String,
#[serde(rename = "Name")]
pub name: String,
#[serde(rename = "Settable")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub settable: Vec<String>,
#[serde(rename = "Value")]
pub value: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginInterfaceType {
#[serde(rename = "Capability")]
pub capability: String,
#[serde(rename = "Prefix")]
pub prefix: String,
#[serde(rename = "Version")]
pub version: String,
}
pub type PluginList200Response = Vec<Plugin>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginMount {
#[serde(rename = "Description")]
pub description: String,
#[serde(rename = "Destination")]
pub destination: String,
#[serde(rename = "Name")]
pub name: String,
#[serde(rename = "Options")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub options: Vec<String>,
#[serde(rename = "Settable")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub settable: Vec<String>,
#[serde(rename = "Source")]
pub source: String,
#[serde(rename = "Type")]
pub type_: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginPrivilege {
#[serde(rename = "Description")]
#[serde(skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Value")]
#[serde(skip_serializing_if = "Option::is_none")]
pub value: Option<Vec<String>>,
}
pub type PluginPullBodyParam = Vec<PluginPrivilege>;
pub type PluginSetBodyParam = Vec<String>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginSettingsInlineItem {
#[serde(rename = "Args")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub args: Vec<String>,
#[serde(rename = "Devices")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub devices: Vec<PluginDevice>,
#[serde(rename = "Env")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub env: Vec<String>,
#[serde(rename = "Mounts")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub mounts: Vec<PluginMount>,
}
pub type PluginUpgradeBodyParam = Vec<PluginPrivilege>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PluginsInfo {
#[serde(rename = "Authorization")]
#[serde(skip_serializing_if = "Option::is_none")]
pub authorization: Option<Vec<String>>,
#[serde(rename = "Log")]
#[serde(skip_serializing_if = "Option::is_none")]
pub log: Option<Vec<String>>,
#[serde(rename = "Network")]
#[serde(skip_serializing_if = "Option::is_none")]
pub network: Option<Vec<String>>,
#[serde(rename = "Volume")]
#[serde(skip_serializing_if = "Option::is_none")]
pub volume: Option<Vec<String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Port {
#[serde(rename = "IP")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ip: Option<String>,
#[serde(rename = "PrivatePort")]
pub private_port: u16,
#[serde(rename = "PublicPort")]
#[serde(skip_serializing_if = "Option::is_none")]
pub public_port: Option<u16>,
#[serde(rename = "Type")]
pub type_: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PortBinding {
#[serde(rename = "HostIp")]
#[serde(skip_serializing_if = "Option::is_none")]
pub host_ip: Option<String>,
#[serde(rename = "HostPort")]
#[serde(skip_serializing_if = "Option::is_none")]
pub host_port: Option<String>,
}
pub type PortMap = HashMap<String, Option<Vec<PortBinding>>>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum PortTypeInlineItem {
#[serde(rename = "tcp")]
Tcp,
#[serde(rename = "udp")]
Udp,
#[serde(rename = "sctp")]
Sctp,
}
impl AsRef<str> for PortTypeInlineItem {
fn as_ref(&self) -> &str {
match self {
PortTypeInlineItem::Tcp => "tcp",
PortTypeInlineItem::Udp => "udp",
PortTypeInlineItem::Sctp => "sctp",
}
}
}
impl std::fmt::Display for PortTypeInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ProcessConfig {
#[serde(skip_serializing_if = "Option::is_none")]
pub arguments: Option<Vec<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub entrypoint: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub privileged: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub tty: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ProgressDetail {
#[serde(skip_serializing_if = "Option::is_none")]
pub current: Option<isize>,
#[serde(skip_serializing_if = "Option::is_none")]
pub total: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct PushImageInfo {
#[serde(skip_serializing_if = "Option::is_none")]
pub error: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub progress: Option<String>,
#[serde(rename = "progressDetail")]
pub progress_detail: Option<ProgressDetail>,
#[serde(skip_serializing_if = "Option::is_none")]
pub status: Option<String>,
}
pub type PutContainerArchiveInputStreamParam = Vec<u8>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum Reachability {
#[serde(rename = "unknown")]
Unknown,
#[serde(rename = "unreachable")]
Unreachable,
#[serde(rename = "reachable")]
Reachable,
}
impl AsRef<str> for Reachability {
fn as_ref(&self) -> &str {
match self {
Reachability::Unknown => "unknown",
Reachability::Unreachable => "unreachable",
Reachability::Reachable => "reachable",
}
}
}
impl std::fmt::Display for Reachability {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct RegistryServiceConfig {
#[serde(rename = "AllowNondistributableArtifactsCIDRs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub allow_nondistributable_artifacts_cid_rs: Option<Vec<String>>,
#[serde(rename = "AllowNondistributableArtifactsHostnames")]
#[serde(skip_serializing_if = "Option::is_none")]
pub allow_nondistributable_artifacts_hostnames: Option<Vec<String>>,
#[serde(rename = "IndexConfigs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub index_configs: Option<HashMap<String, IndexInfo>>,
#[serde(rename = "InsecureRegistryCIDRs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub insecure_registry_cid_rs: Option<Vec<String>>,
#[serde(rename = "Mirrors")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mirrors: Option<Vec<String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ResourceObject {
#[serde(rename = "GenericResources")]
pub generic_resources: Option<GenericResources>,
#[serde(rename = "MemoryBytes")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory_bytes: Option<i64>,
#[serde(rename = "NanoCPUs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub nano_cp_us: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Resources {
#[serde(rename = "BlkioDeviceReadBps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_device_read_bps: Option<Vec<ThrottleDevice>>,
#[serde(rename = "BlkioDeviceReadIOps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_device_read_i_ops: Option<Vec<ThrottleDevice>>,
#[serde(rename = "BlkioDeviceWriteBps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_device_write_bps: Option<Vec<ThrottleDevice>>,
#[serde(rename = "BlkioDeviceWriteIOps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_device_write_i_ops: Option<Vec<ThrottleDevice>>,
#[serde(rename = "BlkioWeight")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_weight: Option<isize>,
#[serde(rename = "BlkioWeightDevice")]
#[serde(skip_serializing_if = "Option::is_none")]
pub blkio_weight_device: Option<Vec<ResourcesBlkioWeightDeviceInlineItem>>,
#[serde(rename = "CgroupParent")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cgroup_parent: Option<String>,
#[serde(rename = "CpuCount")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_count: Option<i64>,
#[serde(rename = "CpuPercent")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_percent: Option<i64>,
#[serde(rename = "CpuPeriod")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_period: Option<i64>,
#[serde(rename = "CpuQuota")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_quota: Option<i64>,
#[serde(rename = "CpuRealtimePeriod")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_realtime_period: Option<i64>,
#[serde(rename = "CpuRealtimeRuntime")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_realtime_runtime: Option<i64>,
#[serde(rename = "CpuShares")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_shares: Option<isize>,
#[serde(rename = "CpusetCpus")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpuset_cpus: Option<String>,
#[serde(rename = "CpusetMems")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpuset_mems: Option<String>,
#[serde(rename = "DeviceCgroupRules")]
#[serde(skip_serializing_if = "Option::is_none")]
pub device_cgroup_rules: Option<Vec<String>>,
#[serde(rename = "DeviceRequests")]
#[serde(skip_serializing_if = "Option::is_none")]
pub device_requests: Option<Vec<DeviceRequest>>,
#[serde(rename = "Devices")]
#[serde(skip_serializing_if = "Option::is_none")]
pub devices: Option<Vec<DeviceMapping>>,
#[serde(rename = "IOMaximumBandwidth")]
#[serde(skip_serializing_if = "Option::is_none")]
pub io_maximum_bandwidth: Option<i64>,
#[serde(rename = "IOMaximumIOps")]
#[serde(skip_serializing_if = "Option::is_none")]
pub io_maximum_i_ops: Option<i64>,
#[serde(rename = "Init")]
#[serde(skip_serializing_if = "Option::is_none")]
pub init: Option<bool>,
#[serde(rename = "KernelMemory")]
#[serde(skip_serializing_if = "Option::is_none")]
pub kernel_memory: Option<i64>,
#[serde(rename = "KernelMemoryTCP")]
#[serde(skip_serializing_if = "Option::is_none")]
pub kernel_memory_tcp: Option<i64>,
#[serde(rename = "Memory")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory: Option<i64>,
#[serde(rename = "MemoryReservation")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory_reservation: Option<i64>,
#[serde(rename = "MemorySwap")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory_swap: Option<i64>,
#[serde(rename = "MemorySwappiness")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory_swappiness: Option<i64>,
#[serde(rename = "NanoCpus")]
#[serde(skip_serializing_if = "Option::is_none")]
pub nano_cpus: Option<i64>,
#[serde(rename = "OomKillDisable")]
#[serde(skip_serializing_if = "Option::is_none")]
pub oom_kill_disable: Option<bool>,
#[serde(rename = "PidsLimit")]
#[serde(skip_serializing_if = "Option::is_none")]
pub pids_limit: Option<i64>,
#[serde(rename = "Ulimits")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ulimits: Option<Vec<ResourcesUlimitsInlineItem>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ResourcesBlkioWeightDeviceInlineItem {
#[serde(rename = "Path")]
#[serde(skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
#[serde(rename = "Weight")]
#[serde(skip_serializing_if = "Option::is_none")]
pub weight: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ResourcesUlimitsInlineItem {
#[serde(rename = "Hard")]
#[serde(skip_serializing_if = "Option::is_none")]
pub hard: Option<isize>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Soft")]
#[serde(skip_serializing_if = "Option::is_none")]
pub soft: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct RestartPolicy {
#[serde(rename = "MaximumRetryCount")]
#[serde(skip_serializing_if = "Option::is_none")]
pub maximum_retry_count: Option<isize>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum RestartPolicyNameInlineItem {
#[serde(rename = "")]
Empty,
#[serde(rename = "no")]
No,
#[serde(rename = "always")]
Always,
#[serde(rename = "unless-stopped")]
UnlessStopped,
#[serde(rename = "on-failure")]
OnFailure,
}
impl AsRef<str> for RestartPolicyNameInlineItem {
fn as_ref(&self) -> &str {
match self {
RestartPolicyNameInlineItem::Empty => "",
RestartPolicyNameInlineItem::No => "no",
RestartPolicyNameInlineItem::Always => "always",
RestartPolicyNameInlineItem::UnlessStopped => "unless-stopped",
RestartPolicyNameInlineItem::OnFailure => "on-failure",
}
}
}
impl std::fmt::Display for RestartPolicyNameInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Runtime {
#[serde(skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
#[serde(rename = "runtimeArgs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub runtime_args: Option<Vec<String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Secret {
#[serde(rename = "CreatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub created_at: Option<DateTime<Utc>>,
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "Spec")]
pub spec: Option<SecretSpec>,
#[serde(rename = "UpdatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_at: Option<DateTime<Utc>>,
#[serde(rename = "Version")]
pub version: Option<ObjectVersion>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SecretCreateBodyParam {
#[serde(rename = "Data")]
#[serde(skip_serializing_if = "Option::is_none")]
pub data: Option<String>,
#[serde(rename = "Driver")]
pub driver: Option<Driver>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Templating")]
pub templating: Option<Driver>,
}
pub type SecretList200Response = Vec<Secret>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SecretSpec {
#[serde(rename = "Data")]
#[serde(skip_serializing_if = "Option::is_none")]
pub data: Option<String>,
#[serde(rename = "Driver")]
pub driver: Option<Driver>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Templating")]
pub templating: Option<Driver>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Service {
#[serde(rename = "CreatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub created_at: Option<DateTime<Utc>>,
#[serde(rename = "Endpoint")]
#[serde(skip_serializing_if = "Option::is_none")]
pub endpoint: Option<ServiceEndpointInlineItem>,
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "JobStatus")]
#[serde(skip_serializing_if = "Option::is_none")]
pub job_status: Option<ServiceJobStatusInlineItem>,
#[serde(rename = "ServiceStatus")]
#[serde(skip_serializing_if = "Option::is_none")]
pub service_status: Option<ServiceServiceStatusInlineItem>,
#[serde(rename = "Spec")]
pub spec: Option<ServiceSpec>,
#[serde(rename = "UpdateStatus")]
#[serde(skip_serializing_if = "Option::is_none")]
pub update_status: Option<ServiceUpdateStatusInlineItem>,
#[serde(rename = "UpdatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_at: Option<DateTime<Utc>>,
#[serde(rename = "Version")]
pub version: Option<ObjectVersion>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceCreate201Response {
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "Warning")]
#[serde(skip_serializing_if = "Option::is_none")]
pub warning: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceCreateBodyParam {
#[serde(rename = "EndpointSpec")]
pub endpoint_spec: Option<EndpointSpec>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Mode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mode: Option<ServiceCreateBodyParamModeInlineItem>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Networks")]
#[serde(skip_serializing_if = "Option::is_none")]
pub networks: Option<Vec<NetworkAttachmentConfig>>,
#[serde(rename = "RollbackConfig")]
#[serde(skip_serializing_if = "Option::is_none")]
pub rollback_config: Option<ServiceCreateBodyParamRollbackConfigInlineItem>,
#[serde(rename = "TaskTemplate")]
pub task_template: Option<TaskSpec>,
#[serde(rename = "UpdateConfig")]
#[serde(skip_serializing_if = "Option::is_none")]
pub update_config: Option<ServiceCreateBodyParamUpdateConfigInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceCreateBodyParamModeInlineItem {
#[serde(rename = "Global")]
#[serde(skip_serializing_if = "Option::is_none")]
pub global: Option<Value>,
#[serde(rename = "GlobalJob")]
#[serde(skip_serializing_if = "Option::is_none")]
pub global_job: Option<Value>,
#[serde(rename = "Replicated")]
#[serde(skip_serializing_if = "Option::is_none")]
pub replicated: Option<ServiceCreateBodyParamModeInlineItemReplicatedInlineItem>,
#[serde(rename = "ReplicatedJob")]
#[serde(skip_serializing_if = "Option::is_none")]
pub replicated_job: Option<ServiceCreateBodyParamModeInlineItemReplicatedJobInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceCreateBodyParamModeInlineItemReplicatedInlineItem {
#[serde(rename = "Replicas")]
#[serde(skip_serializing_if = "Option::is_none")]
pub replicas: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceCreateBodyParamModeInlineItemReplicatedJobInlineItem {
#[serde(rename = "MaxConcurrent")]
#[serde(skip_serializing_if = "Option::is_none")]
pub max_concurrent: Option<i64>,
#[serde(rename = "TotalCompletions")]
#[serde(skip_serializing_if = "Option::is_none")]
pub total_completions: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceCreateBodyParamRollbackConfigInlineItem {
#[serde(rename = "Delay")]
#[serde(skip_serializing_if = "Option::is_none")]
pub delay: Option<i64>,
#[serde(rename = "FailureAction")]
#[serde(skip_serializing_if = "Option::is_none")]
pub failure_action: Option<String>,
#[serde(rename = "MaxFailureRatio")]
#[serde(skip_serializing_if = "Option::is_none")]
pub max_failure_ratio: Option<Value>,
#[serde(rename = "Monitor")]
#[serde(skip_serializing_if = "Option::is_none")]
pub monitor: Option<i64>,
#[serde(rename = "Order")]
#[serde(skip_serializing_if = "Option::is_none")]
pub order: Option<String>,
#[serde(rename = "Parallelism")]
#[serde(skip_serializing_if = "Option::is_none")]
pub parallelism: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ServiceCreateBodyParamRollbackConfigInlineItemFailureActionInlineItem {
#[serde(rename = "continue")]
Continue,
#[serde(rename = "pause")]
Pause,
}
impl AsRef<str> for ServiceCreateBodyParamRollbackConfigInlineItemFailureActionInlineItem {
fn as_ref(&self) -> &str {
match self {
ServiceCreateBodyParamRollbackConfigInlineItemFailureActionInlineItem::Continue => {
"continue"
}
ServiceCreateBodyParamRollbackConfigInlineItemFailureActionInlineItem::Pause => "pause",
}
}
}
impl std::fmt::Display for ServiceCreateBodyParamRollbackConfigInlineItemFailureActionInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ServiceCreateBodyParamRollbackConfigInlineItemOrderInlineItem {
#[serde(rename = "stop-first")]
StopFirst,
#[serde(rename = "start-first")]
StartFirst,
}
impl AsRef<str> for ServiceCreateBodyParamRollbackConfigInlineItemOrderInlineItem {
fn as_ref(&self) -> &str {
match self {
ServiceCreateBodyParamRollbackConfigInlineItemOrderInlineItem::StopFirst => {
"stop-first"
}
ServiceCreateBodyParamRollbackConfigInlineItemOrderInlineItem::StartFirst => {
"start-first"
}
}
}
}
impl std::fmt::Display for ServiceCreateBodyParamRollbackConfigInlineItemOrderInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceCreateBodyParamUpdateConfigInlineItem {
#[serde(rename = "Delay")]
#[serde(skip_serializing_if = "Option::is_none")]
pub delay: Option<i64>,
#[serde(rename = "FailureAction")]
#[serde(skip_serializing_if = "Option::is_none")]
pub failure_action: Option<String>,
#[serde(rename = "MaxFailureRatio")]
#[serde(skip_serializing_if = "Option::is_none")]
pub max_failure_ratio: Option<Value>,
#[serde(rename = "Monitor")]
#[serde(skip_serializing_if = "Option::is_none")]
pub monitor: Option<i64>,
#[serde(rename = "Order")]
#[serde(skip_serializing_if = "Option::is_none")]
pub order: Option<String>,
#[serde(rename = "Parallelism")]
#[serde(skip_serializing_if = "Option::is_none")]
pub parallelism: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ServiceCreateBodyParamUpdateConfigInlineItemFailureActionInlineItem {
#[serde(rename = "continue")]
Continue,
#[serde(rename = "pause")]
Pause,
#[serde(rename = "rollback")]
Rollback,
}
impl AsRef<str> for ServiceCreateBodyParamUpdateConfigInlineItemFailureActionInlineItem {
fn as_ref(&self) -> &str {
match self {
ServiceCreateBodyParamUpdateConfigInlineItemFailureActionInlineItem::Continue => {
"continue"
}
ServiceCreateBodyParamUpdateConfigInlineItemFailureActionInlineItem::Pause => "pause",
ServiceCreateBodyParamUpdateConfigInlineItemFailureActionInlineItem::Rollback => {
"rollback"
}
}
}
}
impl std::fmt::Display for ServiceCreateBodyParamUpdateConfigInlineItemFailureActionInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ServiceCreateBodyParamUpdateConfigInlineItemOrderInlineItem {
#[serde(rename = "stop-first")]
StopFirst,
#[serde(rename = "start-first")]
StartFirst,
}
impl AsRef<str> for ServiceCreateBodyParamUpdateConfigInlineItemOrderInlineItem {
fn as_ref(&self) -> &str {
match self {
ServiceCreateBodyParamUpdateConfigInlineItemOrderInlineItem::StopFirst => "stop-first",
ServiceCreateBodyParamUpdateConfigInlineItemOrderInlineItem::StartFirst => {
"start-first"
}
}
}
}
impl std::fmt::Display for ServiceCreateBodyParamUpdateConfigInlineItemOrderInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceEndpointInlineItem {
#[serde(rename = "Ports")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ports: Option<Vec<EndpointPortConfig>>,
#[serde(rename = "Spec")]
pub spec: Option<EndpointSpec>,
#[serde(rename = "VirtualIPs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub virtual_i_ps: Option<Vec<ServiceEndpointInlineItemVirtualIPsInlineItem>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceEndpointInlineItemVirtualIPsInlineItem {
#[serde(rename = "Addr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub addr: Option<String>,
#[serde(rename = "NetworkID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub network_id: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceJobStatusInlineItem {
#[serde(rename = "JobIteration")]
pub job_iteration: Option<ObjectVersion>,
#[serde(rename = "LastExecution")]
#[serde(skip_serializing_if = "Option::is_none")]
pub last_execution: Option<DateTime<Utc>>,
}
pub type ServiceList200Response = Vec<Service>;
pub type ServiceLogs200Response = Vec<u8>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceServiceStatusInlineItem {
#[serde(rename = "CompletedTasks")]
#[serde(skip_serializing_if = "Option::is_none")]
pub completed_tasks: Option<u64>,
#[serde(rename = "DesiredTasks")]
#[serde(skip_serializing_if = "Option::is_none")]
pub desired_tasks: Option<u64>,
#[serde(rename = "RunningTasks")]
#[serde(skip_serializing_if = "Option::is_none")]
pub running_tasks: Option<u64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceSpec {
#[serde(rename = "EndpointSpec")]
pub endpoint_spec: Option<EndpointSpec>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Mode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mode: Option<ServiceSpecModeInlineItem>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Networks")]
#[serde(skip_serializing_if = "Option::is_none")]
pub networks: Option<Vec<NetworkAttachmentConfig>>,
#[serde(rename = "RollbackConfig")]
#[serde(skip_serializing_if = "Option::is_none")]
pub rollback_config: Option<ServiceSpecRollbackConfigInlineItem>,
#[serde(rename = "TaskTemplate")]
pub task_template: Option<TaskSpec>,
#[serde(rename = "UpdateConfig")]
#[serde(skip_serializing_if = "Option::is_none")]
pub update_config: Option<ServiceSpecUpdateConfigInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceSpecModeInlineItem {
#[serde(rename = "Global")]
#[serde(skip_serializing_if = "Option::is_none")]
pub global: Option<Value>,
#[serde(rename = "GlobalJob")]
#[serde(skip_serializing_if = "Option::is_none")]
pub global_job: Option<Value>,
#[serde(rename = "Replicated")]
#[serde(skip_serializing_if = "Option::is_none")]
pub replicated: Option<ServiceSpecModeInlineItemReplicatedInlineItem>,
#[serde(rename = "ReplicatedJob")]
#[serde(skip_serializing_if = "Option::is_none")]
pub replicated_job: Option<ServiceSpecModeInlineItemReplicatedJobInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceSpecModeInlineItemReplicatedInlineItem {
#[serde(rename = "Replicas")]
#[serde(skip_serializing_if = "Option::is_none")]
pub replicas: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceSpecModeInlineItemReplicatedJobInlineItem {
#[serde(rename = "MaxConcurrent")]
#[serde(skip_serializing_if = "Option::is_none")]
pub max_concurrent: Option<i64>,
#[serde(rename = "TotalCompletions")]
#[serde(skip_serializing_if = "Option::is_none")]
pub total_completions: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceSpecRollbackConfigInlineItem {
#[serde(rename = "Delay")]
#[serde(skip_serializing_if = "Option::is_none")]
pub delay: Option<i64>,
#[serde(rename = "FailureAction")]
#[serde(skip_serializing_if = "Option::is_none")]
pub failure_action: Option<String>,
#[serde(rename = "MaxFailureRatio")]
#[serde(skip_serializing_if = "Option::is_none")]
pub max_failure_ratio: Option<Value>,
#[serde(rename = "Monitor")]
#[serde(skip_serializing_if = "Option::is_none")]
pub monitor: Option<i64>,
#[serde(rename = "Order")]
#[serde(skip_serializing_if = "Option::is_none")]
pub order: Option<String>,
#[serde(rename = "Parallelism")]
#[serde(skip_serializing_if = "Option::is_none")]
pub parallelism: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ServiceSpecRollbackConfigInlineItemFailureActionInlineItem {
#[serde(rename = "continue")]
Continue,
#[serde(rename = "pause")]
Pause,
}
impl AsRef<str> for ServiceSpecRollbackConfigInlineItemFailureActionInlineItem {
fn as_ref(&self) -> &str {
match self {
ServiceSpecRollbackConfigInlineItemFailureActionInlineItem::Continue => "continue",
ServiceSpecRollbackConfigInlineItemFailureActionInlineItem::Pause => "pause",
}
}
}
impl std::fmt::Display for ServiceSpecRollbackConfigInlineItemFailureActionInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ServiceSpecRollbackConfigInlineItemOrderInlineItem {
#[serde(rename = "stop-first")]
StopFirst,
#[serde(rename = "start-first")]
StartFirst,
}
impl AsRef<str> for ServiceSpecRollbackConfigInlineItemOrderInlineItem {
fn as_ref(&self) -> &str {
match self {
ServiceSpecRollbackConfigInlineItemOrderInlineItem::StopFirst => "stop-first",
ServiceSpecRollbackConfigInlineItemOrderInlineItem::StartFirst => "start-first",
}
}
}
impl std::fmt::Display for ServiceSpecRollbackConfigInlineItemOrderInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceSpecUpdateConfigInlineItem {
#[serde(rename = "Delay")]
#[serde(skip_serializing_if = "Option::is_none")]
pub delay: Option<i64>,
#[serde(rename = "FailureAction")]
#[serde(skip_serializing_if = "Option::is_none")]
pub failure_action: Option<String>,
#[serde(rename = "MaxFailureRatio")]
#[serde(skip_serializing_if = "Option::is_none")]
pub max_failure_ratio: Option<Value>,
#[serde(rename = "Monitor")]
#[serde(skip_serializing_if = "Option::is_none")]
pub monitor: Option<i64>,
#[serde(rename = "Order")]
#[serde(skip_serializing_if = "Option::is_none")]
pub order: Option<String>,
#[serde(rename = "Parallelism")]
#[serde(skip_serializing_if = "Option::is_none")]
pub parallelism: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ServiceSpecUpdateConfigInlineItemFailureActionInlineItem {
#[serde(rename = "continue")]
Continue,
#[serde(rename = "pause")]
Pause,
#[serde(rename = "rollback")]
Rollback,
}
impl AsRef<str> for ServiceSpecUpdateConfigInlineItemFailureActionInlineItem {
fn as_ref(&self) -> &str {
match self {
ServiceSpecUpdateConfigInlineItemFailureActionInlineItem::Continue => "continue",
ServiceSpecUpdateConfigInlineItemFailureActionInlineItem::Pause => "pause",
ServiceSpecUpdateConfigInlineItemFailureActionInlineItem::Rollback => "rollback",
}
}
}
impl std::fmt::Display for ServiceSpecUpdateConfigInlineItemFailureActionInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ServiceSpecUpdateConfigInlineItemOrderInlineItem {
#[serde(rename = "stop-first")]
StopFirst,
#[serde(rename = "start-first")]
StartFirst,
}
impl AsRef<str> for ServiceSpecUpdateConfigInlineItemOrderInlineItem {
fn as_ref(&self) -> &str {
match self {
ServiceSpecUpdateConfigInlineItemOrderInlineItem::StopFirst => "stop-first",
ServiceSpecUpdateConfigInlineItemOrderInlineItem::StartFirst => "start-first",
}
}
}
impl std::fmt::Display for ServiceSpecUpdateConfigInlineItemOrderInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceUpdateBodyParam {
#[serde(rename = "EndpointSpec")]
pub endpoint_spec: Option<EndpointSpec>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Mode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mode: Option<ServiceUpdateBodyParamModeInlineItem>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Networks")]
#[serde(skip_serializing_if = "Option::is_none")]
pub networks: Option<Vec<NetworkAttachmentConfig>>,
#[serde(rename = "RollbackConfig")]
#[serde(skip_serializing_if = "Option::is_none")]
pub rollback_config: Option<ServiceUpdateBodyParamRollbackConfigInlineItem>,
#[serde(rename = "TaskTemplate")]
pub task_template: Option<TaskSpec>,
#[serde(rename = "UpdateConfig")]
#[serde(skip_serializing_if = "Option::is_none")]
pub update_config: Option<ServiceUpdateBodyParamUpdateConfigInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceUpdateBodyParamModeInlineItem {
#[serde(rename = "Global")]
#[serde(skip_serializing_if = "Option::is_none")]
pub global: Option<Value>,
#[serde(rename = "GlobalJob")]
#[serde(skip_serializing_if = "Option::is_none")]
pub global_job: Option<Value>,
#[serde(rename = "Replicated")]
#[serde(skip_serializing_if = "Option::is_none")]
pub replicated: Option<ServiceUpdateBodyParamModeInlineItemReplicatedInlineItem>,
#[serde(rename = "ReplicatedJob")]
#[serde(skip_serializing_if = "Option::is_none")]
pub replicated_job: Option<ServiceUpdateBodyParamModeInlineItemReplicatedJobInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceUpdateBodyParamModeInlineItemReplicatedInlineItem {
#[serde(rename = "Replicas")]
#[serde(skip_serializing_if = "Option::is_none")]
pub replicas: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceUpdateBodyParamModeInlineItemReplicatedJobInlineItem {
#[serde(rename = "MaxConcurrent")]
#[serde(skip_serializing_if = "Option::is_none")]
pub max_concurrent: Option<i64>,
#[serde(rename = "TotalCompletions")]
#[serde(skip_serializing_if = "Option::is_none")]
pub total_completions: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceUpdateBodyParamRollbackConfigInlineItem {
#[serde(rename = "Delay")]
#[serde(skip_serializing_if = "Option::is_none")]
pub delay: Option<i64>,
#[serde(rename = "FailureAction")]
#[serde(skip_serializing_if = "Option::is_none")]
pub failure_action: Option<String>,
#[serde(rename = "MaxFailureRatio")]
#[serde(skip_serializing_if = "Option::is_none")]
pub max_failure_ratio: Option<Value>,
#[serde(rename = "Monitor")]
#[serde(skip_serializing_if = "Option::is_none")]
pub monitor: Option<i64>,
#[serde(rename = "Order")]
#[serde(skip_serializing_if = "Option::is_none")]
pub order: Option<String>,
#[serde(rename = "Parallelism")]
#[serde(skip_serializing_if = "Option::is_none")]
pub parallelism: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ServiceUpdateBodyParamRollbackConfigInlineItemFailureActionInlineItem {
#[serde(rename = "continue")]
Continue,
#[serde(rename = "pause")]
Pause,
}
impl AsRef<str> for ServiceUpdateBodyParamRollbackConfigInlineItemFailureActionInlineItem {
fn as_ref(&self) -> &str {
match self {
ServiceUpdateBodyParamRollbackConfigInlineItemFailureActionInlineItem::Continue => {
"continue"
}
ServiceUpdateBodyParamRollbackConfigInlineItemFailureActionInlineItem::Pause => "pause",
}
}
}
impl std::fmt::Display for ServiceUpdateBodyParamRollbackConfigInlineItemFailureActionInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ServiceUpdateBodyParamRollbackConfigInlineItemOrderInlineItem {
#[serde(rename = "stop-first")]
StopFirst,
#[serde(rename = "start-first")]
StartFirst,
}
impl AsRef<str> for ServiceUpdateBodyParamRollbackConfigInlineItemOrderInlineItem {
fn as_ref(&self) -> &str {
match self {
ServiceUpdateBodyParamRollbackConfigInlineItemOrderInlineItem::StopFirst => {
"stop-first"
}
ServiceUpdateBodyParamRollbackConfigInlineItemOrderInlineItem::StartFirst => {
"start-first"
}
}
}
}
impl std::fmt::Display for ServiceUpdateBodyParamRollbackConfigInlineItemOrderInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceUpdateBodyParamUpdateConfigInlineItem {
#[serde(rename = "Delay")]
#[serde(skip_serializing_if = "Option::is_none")]
pub delay: Option<i64>,
#[serde(rename = "FailureAction")]
#[serde(skip_serializing_if = "Option::is_none")]
pub failure_action: Option<String>,
#[serde(rename = "MaxFailureRatio")]
#[serde(skip_serializing_if = "Option::is_none")]
pub max_failure_ratio: Option<Value>,
#[serde(rename = "Monitor")]
#[serde(skip_serializing_if = "Option::is_none")]
pub monitor: Option<i64>,
#[serde(rename = "Order")]
#[serde(skip_serializing_if = "Option::is_none")]
pub order: Option<String>,
#[serde(rename = "Parallelism")]
#[serde(skip_serializing_if = "Option::is_none")]
pub parallelism: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ServiceUpdateBodyParamUpdateConfigInlineItemFailureActionInlineItem {
#[serde(rename = "continue")]
Continue,
#[serde(rename = "pause")]
Pause,
#[serde(rename = "rollback")]
Rollback,
}
impl AsRef<str> for ServiceUpdateBodyParamUpdateConfigInlineItemFailureActionInlineItem {
fn as_ref(&self) -> &str {
match self {
ServiceUpdateBodyParamUpdateConfigInlineItemFailureActionInlineItem::Continue => {
"continue"
}
ServiceUpdateBodyParamUpdateConfigInlineItemFailureActionInlineItem::Pause => "pause",
ServiceUpdateBodyParamUpdateConfigInlineItemFailureActionInlineItem::Rollback => {
"rollback"
}
}
}
}
impl std::fmt::Display for ServiceUpdateBodyParamUpdateConfigInlineItemFailureActionInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ServiceUpdateBodyParamUpdateConfigInlineItemOrderInlineItem {
#[serde(rename = "stop-first")]
StopFirst,
#[serde(rename = "start-first")]
StartFirst,
}
impl AsRef<str> for ServiceUpdateBodyParamUpdateConfigInlineItemOrderInlineItem {
fn as_ref(&self) -> &str {
match self {
ServiceUpdateBodyParamUpdateConfigInlineItemOrderInlineItem::StopFirst => "stop-first",
ServiceUpdateBodyParamUpdateConfigInlineItemOrderInlineItem::StartFirst => {
"start-first"
}
}
}
}
impl std::fmt::Display for ServiceUpdateBodyParamUpdateConfigInlineItemOrderInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceUpdateResponse {
#[serde(rename = "Warnings")]
#[serde(skip_serializing_if = "Option::is_none")]
pub warnings: Option<Vec<String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ServiceUpdateStatusInlineItem {
#[serde(rename = "CompletedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub completed_at: Option<DateTime<Utc>>,
#[serde(rename = "Message")]
#[serde(skip_serializing_if = "Option::is_none")]
pub message: Option<String>,
#[serde(rename = "StartedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub started_at: Option<DateTime<Utc>>,
#[serde(rename = "State")]
#[serde(skip_serializing_if = "Option::is_none")]
pub state: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum ServiceUpdateStatusInlineItemStateInlineItem {
#[serde(rename = "updating")]
Updating,
#[serde(rename = "paused")]
Paused,
#[serde(rename = "completed")]
Completed,
}
impl AsRef<str> for ServiceUpdateStatusInlineItemStateInlineItem {
fn as_ref(&self) -> &str {
match self {
ServiceUpdateStatusInlineItemStateInlineItem::Updating => "updating",
ServiceUpdateStatusInlineItemStateInlineItem::Paused => "paused",
ServiceUpdateStatusInlineItemStateInlineItem::Completed => "completed",
}
}
}
impl std::fmt::Display for ServiceUpdateStatusInlineItemStateInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Swarm {
#[serde(rename = "CreatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub created_at: Option<DateTime<Utc>>,
#[serde(rename = "DataPathPort")]
#[serde(skip_serializing_if = "Option::is_none")]
pub data_path_port: Option<u32>,
#[serde(rename = "DefaultAddrPool")]
#[serde(skip_serializing_if = "Option::is_none")]
pub default_addr_pool: Option<Vec<String>>,
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "JoinTokens")]
pub join_tokens: Option<JoinTokens>,
#[serde(rename = "RootRotationInProgress")]
#[serde(skip_serializing_if = "Option::is_none")]
pub root_rotation_in_progress: Option<bool>,
#[serde(rename = "Spec")]
pub spec: Option<SwarmSpec>,
#[serde(rename = "SubnetSize")]
#[serde(skip_serializing_if = "Option::is_none")]
pub subnet_size: Option<u32>,
#[serde(rename = "TLSInfo")]
pub tls_info: Option<TlsInfo>,
#[serde(rename = "UpdatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_at: Option<DateTime<Utc>>,
#[serde(rename = "Version")]
pub version: Option<ObjectVersion>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmInfo {
#[serde(rename = "Cluster")]
pub cluster: Option<ClusterInfo>,
#[serde(rename = "ControlAvailable")]
#[serde(skip_serializing_if = "Option::is_none")]
pub control_available: Option<bool>,
#[serde(rename = "Error")]
#[serde(skip_serializing_if = "Option::is_none")]
pub error: Option<String>,
#[serde(rename = "LocalNodeState")]
pub local_node_state: Option<String>,
#[serde(rename = "Managers")]
#[serde(skip_serializing_if = "Option::is_none")]
pub managers: Option<isize>,
#[serde(rename = "NodeAddr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub node_addr: Option<String>,
#[serde(rename = "NodeID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub node_id: Option<String>,
#[serde(rename = "Nodes")]
#[serde(skip_serializing_if = "Option::is_none")]
pub nodes: Option<isize>,
#[serde(rename = "RemoteManagers")]
#[serde(skip_serializing_if = "Option::is_none")]
pub remote_managers: Option<Vec<PeerNode>>,
}
pub type SwarmInit200Response = String;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmInitBodyParam {
#[serde(rename = "AdvertiseAddr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub advertise_addr: Option<String>,
#[serde(rename = "DataPathAddr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub data_path_addr: Option<String>,
#[serde(rename = "DataPathPort")]
#[serde(skip_serializing_if = "Option::is_none")]
pub data_path_port: Option<u32>,
#[serde(rename = "DefaultAddrPool")]
#[serde(skip_serializing_if = "Option::is_none")]
pub default_addr_pool: Option<Vec<String>>,
#[serde(rename = "ForceNewCluster")]
#[serde(skip_serializing_if = "Option::is_none")]
pub force_new_cluster: Option<bool>,
#[serde(rename = "ListenAddr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub listen_addr: Option<String>,
#[serde(rename = "Spec")]
pub spec: Option<SwarmSpec>,
#[serde(rename = "SubnetSize")]
#[serde(skip_serializing_if = "Option::is_none")]
pub subnet_size: Option<u32>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmJoinBodyParam {
#[serde(rename = "AdvertiseAddr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub advertise_addr: Option<String>,
#[serde(rename = "DataPathAddr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub data_path_addr: Option<String>,
#[serde(rename = "JoinToken")]
#[serde(skip_serializing_if = "Option::is_none")]
pub join_token: Option<String>,
#[serde(rename = "ListenAddr")]
#[serde(skip_serializing_if = "Option::is_none")]
pub listen_addr: Option<String>,
#[serde(rename = "RemoteAddrs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub remote_addrs: Option<Vec<String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmSpec {
#[serde(rename = "CAConfig")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ca_config: Option<SwarmSpecCaConfigInlineItem>,
#[serde(rename = "Dispatcher")]
#[serde(skip_serializing_if = "Option::is_none")]
pub dispatcher: Option<SwarmSpecDispatcherInlineItem>,
#[serde(rename = "EncryptionConfig")]
#[serde(skip_serializing_if = "Option::is_none")]
pub encryption_config: Option<SwarmSpecEncryptionConfigInlineItem>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Orchestration")]
#[serde(skip_serializing_if = "Option::is_none")]
pub orchestration: Option<SwarmSpecOrchestrationInlineItem>,
#[serde(rename = "Raft")]
#[serde(skip_serializing_if = "Option::is_none")]
pub raft: Option<SwarmSpecRaftInlineItem>,
#[serde(rename = "TaskDefaults")]
#[serde(skip_serializing_if = "Option::is_none")]
pub task_defaults: Option<SwarmSpecTaskDefaultsInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmSpecCaConfigInlineItem {
#[serde(rename = "ExternalCAs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub external_c_as: Option<Vec<SwarmSpecCaConfigInlineItemExternalCAsInlineItem>>,
#[serde(rename = "ForceRotate")]
#[serde(skip_serializing_if = "Option::is_none")]
pub force_rotate: Option<u64>,
#[serde(rename = "NodeCertExpiry")]
#[serde(skip_serializing_if = "Option::is_none")]
pub node_cert_expiry: Option<i64>,
#[serde(rename = "SigningCACert")]
#[serde(skip_serializing_if = "Option::is_none")]
pub signing_ca_cert: Option<String>,
#[serde(rename = "SigningCAKey")]
#[serde(skip_serializing_if = "Option::is_none")]
pub signing_ca_key: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmSpecCaConfigInlineItemExternalCAsInlineItem {
#[serde(rename = "CACert")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ca_cert: Option<String>,
#[serde(rename = "Options")]
#[serde(skip_serializing_if = "Option::is_none")]
pub options: Option<HashMap<String, String>>,
#[serde(rename = "Protocol")]
#[serde(skip_serializing_if = "Option::is_none")]
pub protocol: Option<String>,
#[serde(rename = "URL")]
#[serde(skip_serializing_if = "Option::is_none")]
pub url: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum SwarmSpecCaConfigInlineItemExternalCAsInlineItemProtocolInlineItem {
#[serde(rename = "cfssl")]
Cfssl,
}
impl AsRef<str> for SwarmSpecCaConfigInlineItemExternalCAsInlineItemProtocolInlineItem {
fn as_ref(&self) -> &str {
match self {
SwarmSpecCaConfigInlineItemExternalCAsInlineItemProtocolInlineItem::Cfssl => "cfssl",
}
}
}
impl std::fmt::Display for SwarmSpecCaConfigInlineItemExternalCAsInlineItemProtocolInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmSpecDispatcherInlineItem {
#[serde(rename = "HeartbeatPeriod")]
#[serde(skip_serializing_if = "Option::is_none")]
pub heartbeat_period: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmSpecEncryptionConfigInlineItem {
#[serde(rename = "AutoLockManagers")]
#[serde(skip_serializing_if = "Option::is_none")]
pub auto_lock_managers: Option<bool>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmSpecOrchestrationInlineItem {
#[serde(rename = "TaskHistoryRetentionLimit")]
#[serde(skip_serializing_if = "Option::is_none")]
pub task_history_retention_limit: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmSpecRaftInlineItem {
#[serde(rename = "ElectionTick")]
#[serde(skip_serializing_if = "Option::is_none")]
pub election_tick: Option<isize>,
#[serde(rename = "HeartbeatTick")]
#[serde(skip_serializing_if = "Option::is_none")]
pub heartbeat_tick: Option<isize>,
#[serde(rename = "KeepOldSnapshots")]
#[serde(skip_serializing_if = "Option::is_none")]
pub keep_old_snapshots: Option<u64>,
#[serde(rename = "LogEntriesForSlowFollowers")]
#[serde(skip_serializing_if = "Option::is_none")]
pub log_entries_for_slow_followers: Option<u64>,
#[serde(rename = "SnapshotInterval")]
#[serde(skip_serializing_if = "Option::is_none")]
pub snapshot_interval: Option<u64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmSpecTaskDefaultsInlineItem {
#[serde(rename = "LogDriver")]
#[serde(skip_serializing_if = "Option::is_none")]
pub log_driver: Option<SwarmSpecTaskDefaultsInlineItemLogDriverInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmSpecTaskDefaultsInlineItemLogDriverInlineItem {
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Options")]
#[serde(skip_serializing_if = "Option::is_none")]
pub options: Option<HashMap<String, String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmUnlockBodyParam {
#[serde(rename = "UnlockKey")]
#[serde(skip_serializing_if = "Option::is_none")]
pub unlock_key: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SwarmUnlockkey200Response {
#[serde(rename = "UnlockKey")]
#[serde(skip_serializing_if = "Option::is_none")]
pub unlock_key: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SystemAuth200Response {
#[serde(rename = "IdentityToken")]
#[serde(skip_serializing_if = "Option::is_none")]
pub identity_token: Option<String>,
#[serde(rename = "Status")]
pub status: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SystemDataUsage200Response {
#[serde(rename = "BuildCache")]
#[serde(skip_serializing_if = "Option::is_none")]
pub build_cache: Option<Vec<BuildCache>>,
#[serde(rename = "Containers")]
#[serde(skip_serializing_if = "Option::is_none")]
pub containers: Option<Vec<ContainerSummary>>,
#[serde(rename = "Images")]
#[serde(skip_serializing_if = "Option::is_none")]
pub images: Option<Vec<ImageSummary>>,
#[serde(rename = "LayersSize")]
#[serde(skip_serializing_if = "Option::is_none")]
pub layers_size: Option<i64>,
#[serde(rename = "Volumes")]
#[serde(skip_serializing_if = "Option::is_none")]
pub volumes: Option<Vec<Volume>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SystemInfo {
#[serde(rename = "Architecture")]
#[serde(skip_serializing_if = "Option::is_none")]
pub architecture: Option<String>,
#[serde(rename = "BridgeNfIp6tables")]
#[serde(skip_serializing_if = "Option::is_none")]
pub bridge_nf_ip_6_tables: Option<bool>,
#[serde(rename = "BridgeNfIptables")]
#[serde(skip_serializing_if = "Option::is_none")]
pub bridge_nf_iptables: Option<bool>,
#[serde(rename = "CPUSet")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_set: Option<bool>,
#[serde(rename = "CPUShares")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_shares: Option<bool>,
#[serde(rename = "CgroupDriver")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cgroup_driver: Option<String>,
#[serde(rename = "CgroupVersion")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cgroup_version: Option<String>,
#[serde(rename = "ClusterAdvertise")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster_advertise: Option<String>,
#[serde(rename = "ClusterStore")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cluster_store: Option<String>,
#[serde(rename = "ContainerdCommit")]
pub containerd_commit: Option<Commit>,
#[serde(rename = "Containers")]
#[serde(skip_serializing_if = "Option::is_none")]
pub containers: Option<isize>,
#[serde(rename = "ContainersPaused")]
#[serde(skip_serializing_if = "Option::is_none")]
pub containers_paused: Option<isize>,
#[serde(rename = "ContainersRunning")]
#[serde(skip_serializing_if = "Option::is_none")]
pub containers_running: Option<isize>,
#[serde(rename = "ContainersStopped")]
#[serde(skip_serializing_if = "Option::is_none")]
pub containers_stopped: Option<isize>,
#[serde(rename = "CpuCfsPeriod")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_cfs_period: Option<bool>,
#[serde(rename = "CpuCfsQuota")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cpu_cfs_quota: Option<bool>,
#[serde(rename = "Debug")]
#[serde(skip_serializing_if = "Option::is_none")]
pub debug: Option<bool>,
#[serde(rename = "DefaultAddressPools")]
#[serde(skip_serializing_if = "Option::is_none")]
pub default_address_pools: Option<Vec<SystemInfoDefaultAddressPoolsInlineItem>>,
#[serde(rename = "DefaultRuntime")]
#[serde(skip_serializing_if = "Option::is_none")]
pub default_runtime: Option<String>,
#[serde(rename = "DockerRootDir")]
#[serde(skip_serializing_if = "Option::is_none")]
pub docker_root_dir: Option<String>,
#[serde(rename = "Driver")]
#[serde(skip_serializing_if = "Option::is_none")]
pub driver: Option<String>,
#[serde(rename = "DriverStatus")]
#[serde(skip_serializing_if = "Option::is_none")]
pub driver_status: Option<Vec<Vec<String>>>,
#[serde(rename = "ExperimentalBuild")]
#[serde(skip_serializing_if = "Option::is_none")]
pub experimental_build: Option<bool>,
#[serde(rename = "GenericResources")]
pub generic_resources: Option<GenericResources>,
#[serde(rename = "HttpProxy")]
#[serde(skip_serializing_if = "Option::is_none")]
pub http_proxy: Option<String>,
#[serde(rename = "HttpsProxy")]
#[serde(skip_serializing_if = "Option::is_none")]
pub https_proxy: Option<String>,
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "IPv4Forwarding")]
#[serde(skip_serializing_if = "Option::is_none")]
pub i_pv_4_forwarding: Option<bool>,
#[serde(rename = "Images")]
#[serde(skip_serializing_if = "Option::is_none")]
pub images: Option<isize>,
#[serde(rename = "IndexServerAddress")]
#[serde(skip_serializing_if = "Option::is_none")]
pub index_server_address: Option<String>,
#[serde(rename = "InitBinary")]
#[serde(skip_serializing_if = "Option::is_none")]
pub init_binary: Option<String>,
#[serde(rename = "InitCommit")]
pub init_commit: Option<Commit>,
#[serde(rename = "Isolation")]
#[serde(skip_serializing_if = "Option::is_none")]
pub isolation: Option<String>,
#[serde(rename = "KernelMemory")]
#[serde(skip_serializing_if = "Option::is_none")]
pub kernel_memory: Option<bool>,
#[serde(rename = "KernelMemoryTCP")]
#[serde(skip_serializing_if = "Option::is_none")]
pub kernel_memory_tcp: Option<bool>,
#[serde(rename = "KernelVersion")]
#[serde(skip_serializing_if = "Option::is_none")]
pub kernel_version: Option<String>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<Vec<String>>,
#[serde(rename = "LiveRestoreEnabled")]
#[serde(skip_serializing_if = "Option::is_none")]
pub live_restore_enabled: Option<bool>,
#[serde(rename = "LoggingDriver")]
#[serde(skip_serializing_if = "Option::is_none")]
pub logging_driver: Option<String>,
#[serde(rename = "MemTotal")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mem_total: Option<i64>,
#[serde(rename = "MemoryLimit")]
#[serde(skip_serializing_if = "Option::is_none")]
pub memory_limit: Option<bool>,
#[serde(rename = "NCPU")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ncpu: Option<isize>,
#[serde(rename = "NEventsListener")]
#[serde(skip_serializing_if = "Option::is_none")]
pub n_events_listener: Option<isize>,
#[serde(rename = "NFd")]
#[serde(skip_serializing_if = "Option::is_none")]
pub n_fd: Option<isize>,
#[serde(rename = "NGoroutines")]
#[serde(skip_serializing_if = "Option::is_none")]
pub n_goroutines: Option<isize>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "NoProxy")]
#[serde(skip_serializing_if = "Option::is_none")]
pub no_proxy: Option<String>,
#[serde(rename = "OSType")]
#[serde(skip_serializing_if = "Option::is_none")]
pub os_type: Option<String>,
#[serde(rename = "OSVersion")]
#[serde(skip_serializing_if = "Option::is_none")]
pub os_version: Option<String>,
#[serde(rename = "OomKillDisable")]
#[serde(skip_serializing_if = "Option::is_none")]
pub oom_kill_disable: Option<bool>,
#[serde(rename = "OperatingSystem")]
#[serde(skip_serializing_if = "Option::is_none")]
pub operating_system: Option<String>,
#[serde(rename = "PidsLimit")]
#[serde(skip_serializing_if = "Option::is_none")]
pub pids_limit: Option<bool>,
#[serde(rename = "Plugins")]
pub plugins: Option<PluginsInfo>,
#[serde(rename = "ProductLicense")]
#[serde(skip_serializing_if = "Option::is_none")]
pub product_license: Option<String>,
#[serde(rename = "RegistryConfig")]
pub registry_config: Option<RegistryServiceConfig>,
#[serde(rename = "RuncCommit")]
pub runc_commit: Option<Commit>,
#[serde(rename = "Runtimes")]
#[serde(skip_serializing_if = "Option::is_none")]
pub runtimes: Option<HashMap<String, Runtime>>,
#[serde(rename = "SecurityOptions")]
#[serde(skip_serializing_if = "Option::is_none")]
pub security_options: Option<Vec<String>>,
#[serde(rename = "ServerVersion")]
#[serde(skip_serializing_if = "Option::is_none")]
pub server_version: Option<String>,
#[serde(rename = "SwapLimit")]
#[serde(skip_serializing_if = "Option::is_none")]
pub swap_limit: Option<bool>,
#[serde(rename = "Swarm")]
pub swarm: Option<SwarmInfo>,
#[serde(rename = "SystemTime")]
#[serde(skip_serializing_if = "Option::is_none")]
pub system_time: Option<String>,
#[serde(rename = "Warnings")]
#[serde(skip_serializing_if = "Option::is_none")]
pub warnings: Option<Vec<String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum SystemInfoCgroupDriverInlineItem {
#[serde(rename = "cgroupfs")]
Cgroupfs,
#[serde(rename = "systemd")]
Systemd,
#[serde(rename = "none")]
None,
}
impl AsRef<str> for SystemInfoCgroupDriverInlineItem {
fn as_ref(&self) -> &str {
match self {
SystemInfoCgroupDriverInlineItem::Cgroupfs => "cgroupfs",
SystemInfoCgroupDriverInlineItem::Systemd => "systemd",
SystemInfoCgroupDriverInlineItem::None => "none",
}
}
}
impl std::fmt::Display for SystemInfoCgroupDriverInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum SystemInfoCgroupVersionInlineItem {
#[serde(rename = "1")]
Value1,
#[serde(rename = "2")]
Value2,
}
impl AsRef<str> for SystemInfoCgroupVersionInlineItem {
fn as_ref(&self) -> &str {
match self {
SystemInfoCgroupVersionInlineItem::Value1 => "1",
SystemInfoCgroupVersionInlineItem::Value2 => "2",
}
}
}
impl std::fmt::Display for SystemInfoCgroupVersionInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SystemInfoDefaultAddressPoolsInlineItem {
#[serde(rename = "Base")]
#[serde(skip_serializing_if = "Option::is_none")]
pub base: Option<String>,
#[serde(rename = "Size")]
#[serde(skip_serializing_if = "Option::is_none")]
pub size: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum SystemInfoIsolationInlineItem {
#[serde(rename = "default")]
Default,
#[serde(rename = "hyperv")]
Hyperv,
#[serde(rename = "process")]
Process,
}
impl AsRef<str> for SystemInfoIsolationInlineItem {
fn as_ref(&self) -> &str {
match self {
SystemInfoIsolationInlineItem::Default => "default",
SystemInfoIsolationInlineItem::Hyperv => "hyperv",
SystemInfoIsolationInlineItem::Process => "process",
}
}
}
impl std::fmt::Display for SystemInfoIsolationInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
pub type SystemPing200Response = String;
pub type SystemPingHead200Response = String;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SystemVersion {
#[serde(rename = "ApiVersion")]
#[serde(skip_serializing_if = "Option::is_none")]
pub api_version: Option<String>,
#[serde(rename = "Arch")]
#[serde(skip_serializing_if = "Option::is_none")]
pub arch: Option<String>,
#[serde(rename = "BuildTime")]
#[serde(skip_serializing_if = "Option::is_none")]
pub build_time: Option<String>,
#[serde(rename = "Components")]
#[serde(skip_serializing_if = "Option::is_none")]
pub components: Option<Vec<ComponentVersion>>,
#[serde(rename = "Experimental")]
#[serde(skip_serializing_if = "Option::is_none")]
pub experimental: Option<bool>,
#[serde(rename = "GitCommit")]
#[serde(skip_serializing_if = "Option::is_none")]
pub git_commit: Option<String>,
#[serde(rename = "GoVersion")]
#[serde(skip_serializing_if = "Option::is_none")]
pub go_version: Option<String>,
#[serde(rename = "KernelVersion")]
#[serde(skip_serializing_if = "Option::is_none")]
pub kernel_version: Option<String>,
#[serde(rename = "MinAPIVersion")]
#[serde(skip_serializing_if = "Option::is_none")]
pub min_api_version: Option<String>,
#[serde(rename = "Os")]
#[serde(skip_serializing_if = "Option::is_none")]
pub os: Option<String>,
#[serde(rename = "Platform")]
#[serde(skip_serializing_if = "Option::is_none")]
pub platform: Option<SystemVersionPlatformInlineItem>,
#[serde(rename = "Version")]
#[serde(skip_serializing_if = "Option::is_none")]
pub version: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct SystemVersionPlatformInlineItem {
#[serde(rename = "Name")]
pub name: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TlsInfo {
#[serde(rename = "CertIssuerPublicKey")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cert_issuer_public_key: Option<String>,
#[serde(rename = "CertIssuerSubject")]
#[serde(skip_serializing_if = "Option::is_none")]
pub cert_issuer_subject: Option<String>,
#[serde(rename = "TrustRoot")]
#[serde(skip_serializing_if = "Option::is_none")]
pub trust_root: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Task {
#[serde(rename = "AssignedGenericResources")]
pub assigned_generic_resources: Option<GenericResources>,
#[serde(rename = "CreatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub created_at: Option<DateTime<Utc>>,
#[serde(rename = "DesiredState")]
pub desired_state: Option<String>,
#[serde(rename = "ID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub id: Option<String>,
#[serde(rename = "JobIteration")]
pub job_iteration: Option<ObjectVersion>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "NodeID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub node_id: Option<String>,
#[serde(rename = "ServiceID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub service_id: Option<String>,
#[serde(rename = "Slot")]
#[serde(skip_serializing_if = "Option::is_none")]
pub slot: Option<isize>,
#[serde(rename = "Spec")]
pub spec: Option<TaskSpec>,
#[serde(rename = "Status")]
#[serde(skip_serializing_if = "Option::is_none")]
pub status: Option<TaskStatusInlineItem>,
#[serde(rename = "UpdatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub updated_at: Option<DateTime<Utc>>,
#[serde(rename = "Version")]
pub version: Option<ObjectVersion>,
}
pub type TaskList200Response = Vec<Task>;
pub type TaskLogs200Response = Vec<u8>;
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpec {
#[serde(rename = "ContainerSpec")]
#[serde(skip_serializing_if = "Option::is_none")]
pub container_spec: Option<TaskSpecContainerSpecInlineItem>,
#[serde(rename = "ForceUpdate")]
#[serde(skip_serializing_if = "Option::is_none")]
pub force_update: Option<isize>,
#[serde(rename = "LogDriver")]
#[serde(skip_serializing_if = "Option::is_none")]
pub log_driver: Option<TaskSpecLogDriverInlineItem>,
#[serde(rename = "NetworkAttachmentSpec")]
#[serde(skip_serializing_if = "Option::is_none")]
pub network_attachment_spec: Option<TaskSpecNetworkAttachmentSpecInlineItem>,
#[serde(rename = "Networks")]
#[serde(skip_serializing_if = "Option::is_none")]
pub networks: Option<Vec<NetworkAttachmentConfig>>,
#[serde(rename = "Placement")]
#[serde(skip_serializing_if = "Option::is_none")]
pub placement: Option<TaskSpecPlacementInlineItem>,
#[serde(rename = "PluginSpec")]
#[serde(skip_serializing_if = "Option::is_none")]
pub plugin_spec: Option<TaskSpecPluginSpecInlineItem>,
#[serde(rename = "Resources")]
#[serde(skip_serializing_if = "Option::is_none")]
pub resources: Option<TaskSpecResourcesInlineItem>,
#[serde(rename = "RestartPolicy")]
#[serde(skip_serializing_if = "Option::is_none")]
pub restart_policy: Option<TaskSpecRestartPolicyInlineItem>,
#[serde(rename = "Runtime")]
#[serde(skip_serializing_if = "Option::is_none")]
pub runtime: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecContainerSpecInlineItem {
#[serde(rename = "Args")]
#[serde(skip_serializing_if = "Option::is_none")]
pub args: Option<Vec<String>>,
#[serde(rename = "CapabilityAdd")]
#[serde(skip_serializing_if = "Option::is_none")]
pub capability_add: Option<Vec<String>>,
#[serde(rename = "CapabilityDrop")]
#[serde(skip_serializing_if = "Option::is_none")]
pub capability_drop: Option<Vec<String>>,
#[serde(rename = "Command")]
#[serde(skip_serializing_if = "Option::is_none")]
pub command: Option<Vec<String>>,
#[serde(rename = "Configs")]
#[serde(skip_serializing_if = "Option::is_none")]
pub configs: Option<Vec<TaskSpecContainerSpecInlineItemConfigsInlineItem>>,
#[serde(rename = "DNSConfig")]
#[serde(skip_serializing_if = "Option::is_none")]
pub dns_config: Option<TaskSpecContainerSpecInlineItemDnsConfigInlineItem>,
#[serde(rename = "Dir")]
#[serde(skip_serializing_if = "Option::is_none")]
pub dir: Option<String>,
#[serde(rename = "Env")]
#[serde(skip_serializing_if = "Option::is_none")]
pub env: Option<Vec<String>>,
#[serde(rename = "Groups")]
#[serde(skip_serializing_if = "Option::is_none")]
pub groups: Option<Vec<String>>,
#[serde(rename = "HealthCheck")]
pub health_check: Option<HealthConfig>,
#[serde(rename = "Hostname")]
#[serde(skip_serializing_if = "Option::is_none")]
pub hostname: Option<String>,
#[serde(rename = "Hosts")]
#[serde(skip_serializing_if = "Option::is_none")]
pub hosts: Option<Vec<String>>,
#[serde(rename = "Image")]
#[serde(skip_serializing_if = "Option::is_none")]
pub image: Option<String>,
#[serde(rename = "Init")]
#[serde(skip_serializing_if = "Option::is_none")]
pub init: Option<bool>,
#[serde(rename = "Isolation")]
#[serde(skip_serializing_if = "Option::is_none")]
pub isolation: Option<String>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Mounts")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mounts: Option<Vec<Mount>>,
#[serde(rename = "OpenStdin")]
#[serde(skip_serializing_if = "Option::is_none")]
pub open_stdin: Option<bool>,
#[serde(rename = "Privileges")]
#[serde(skip_serializing_if = "Option::is_none")]
pub privileges: Option<TaskSpecContainerSpecInlineItemPrivilegesInlineItem>,
#[serde(rename = "ReadOnly")]
#[serde(skip_serializing_if = "Option::is_none")]
pub read_only: Option<bool>,
#[serde(rename = "Secrets")]
#[serde(skip_serializing_if = "Option::is_none")]
pub secrets: Option<Vec<TaskSpecContainerSpecInlineItemSecretsInlineItem>>,
#[serde(rename = "StopGracePeriod")]
#[serde(skip_serializing_if = "Option::is_none")]
pub stop_grace_period: Option<i64>,
#[serde(rename = "StopSignal")]
#[serde(skip_serializing_if = "Option::is_none")]
pub stop_signal: Option<String>,
#[serde(rename = "Sysctls")]
#[serde(skip_serializing_if = "Option::is_none")]
pub sysctls: Option<HashMap<String, String>>,
#[serde(rename = "TTY")]
#[serde(skip_serializing_if = "Option::is_none")]
pub tty: Option<bool>,
#[serde(rename = "Ulimits")]
#[serde(skip_serializing_if = "Option::is_none")]
pub ulimits: Option<Vec<TaskSpecContainerSpecInlineItemUlimitsInlineItem>>,
#[serde(rename = "User")]
#[serde(skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecContainerSpecInlineItemConfigsInlineItem {
#[serde(rename = "ConfigID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub config_id: Option<String>,
#[serde(rename = "ConfigName")]
#[serde(skip_serializing_if = "Option::is_none")]
pub config_name: Option<String>,
#[serde(rename = "File")]
#[serde(skip_serializing_if = "Option::is_none")]
pub file: Option<TaskSpecContainerSpecInlineItemConfigsInlineItemFileInlineItem>,
#[serde(rename = "Runtime")]
#[serde(skip_serializing_if = "Option::is_none")]
pub runtime: Option<Value>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecContainerSpecInlineItemConfigsInlineItemFileInlineItem {
#[serde(rename = "GID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub gid: Option<String>,
#[serde(rename = "Mode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mode: Option<u32>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "UID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub uid: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecContainerSpecInlineItemDnsConfigInlineItem {
#[serde(rename = "Nameservers")]
#[serde(skip_serializing_if = "Option::is_none")]
pub nameservers: Option<Vec<String>>,
#[serde(rename = "Options")]
#[serde(skip_serializing_if = "Option::is_none")]
pub options: Option<Vec<String>>,
#[serde(rename = "Search")]
#[serde(skip_serializing_if = "Option::is_none")]
pub search: Option<Vec<String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum TaskSpecContainerSpecInlineItemIsolationInlineItem {
#[serde(rename = "default")]
Default,
#[serde(rename = "process")]
Process,
#[serde(rename = "hyperv")]
Hyperv,
}
impl AsRef<str> for TaskSpecContainerSpecInlineItemIsolationInlineItem {
fn as_ref(&self) -> &str {
match self {
TaskSpecContainerSpecInlineItemIsolationInlineItem::Default => "default",
TaskSpecContainerSpecInlineItemIsolationInlineItem::Process => "process",
TaskSpecContainerSpecInlineItemIsolationInlineItem::Hyperv => "hyperv",
}
}
}
impl std::fmt::Display for TaskSpecContainerSpecInlineItemIsolationInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecContainerSpecInlineItemPrivilegesInlineItem {
#[serde(rename = "CredentialSpec")]
#[serde(skip_serializing_if = "Option::is_none")]
pub credential_spec:
Option<TaskSpecContainerSpecInlineItemPrivilegesInlineItemCredentialSpecInlineItem>,
#[serde(rename = "SELinuxContext")]
#[serde(skip_serializing_if = "Option::is_none")]
pub se_linux_context:
Option<TaskSpecContainerSpecInlineItemPrivilegesInlineItemSeLinuxContextInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecContainerSpecInlineItemPrivilegesInlineItemCredentialSpecInlineItem {
#[serde(rename = "Config")]
#[serde(skip_serializing_if = "Option::is_none")]
pub config: Option<String>,
#[serde(rename = "File")]
#[serde(skip_serializing_if = "Option::is_none")]
pub file: Option<String>,
#[serde(rename = "Registry")]
#[serde(skip_serializing_if = "Option::is_none")]
pub registry: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecContainerSpecInlineItemPrivilegesInlineItemSeLinuxContextInlineItem {
#[serde(rename = "Disable")]
#[serde(skip_serializing_if = "Option::is_none")]
pub disable: Option<bool>,
#[serde(rename = "Level")]
#[serde(skip_serializing_if = "Option::is_none")]
pub level: Option<String>,
#[serde(rename = "Role")]
#[serde(skip_serializing_if = "Option::is_none")]
pub role: Option<String>,
#[serde(rename = "Type")]
#[serde(skip_serializing_if = "Option::is_none")]
pub type_: Option<String>,
#[serde(rename = "User")]
#[serde(skip_serializing_if = "Option::is_none")]
pub user: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecContainerSpecInlineItemSecretsInlineItem {
#[serde(rename = "File")]
#[serde(skip_serializing_if = "Option::is_none")]
pub file: Option<TaskSpecContainerSpecInlineItemSecretsInlineItemFileInlineItem>,
#[serde(rename = "SecretID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub secret_id: Option<String>,
#[serde(rename = "SecretName")]
#[serde(skip_serializing_if = "Option::is_none")]
pub secret_name: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecContainerSpecInlineItemSecretsInlineItemFileInlineItem {
#[serde(rename = "GID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub gid: Option<String>,
#[serde(rename = "Mode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub mode: Option<u32>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "UID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub uid: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecContainerSpecInlineItemUlimitsInlineItem {
#[serde(rename = "Hard")]
#[serde(skip_serializing_if = "Option::is_none")]
pub hard: Option<isize>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Soft")]
#[serde(skip_serializing_if = "Option::is_none")]
pub soft: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecLogDriverInlineItem {
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "Options")]
#[serde(skip_serializing_if = "Option::is_none")]
pub options: Option<HashMap<String, String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecNetworkAttachmentSpecInlineItem {
#[serde(rename = "ContainerID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub container_id: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecPlacementInlineItem {
#[serde(rename = "Constraints")]
#[serde(skip_serializing_if = "Option::is_none")]
pub constraints: Option<Vec<String>>,
#[serde(rename = "MaxReplicas")]
#[serde(skip_serializing_if = "Option::is_none")]
pub max_replicas: Option<i64>,
#[serde(rename = "Platforms")]
#[serde(skip_serializing_if = "Option::is_none")]
pub platforms: Option<Vec<Platform>>,
#[serde(rename = "Preferences")]
#[serde(skip_serializing_if = "Option::is_none")]
pub preferences: Option<Vec<TaskSpecPlacementInlineItemPreferencesInlineItem>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecPlacementInlineItemPreferencesInlineItem {
#[serde(rename = "Spread")]
#[serde(skip_serializing_if = "Option::is_none")]
pub spread: Option<TaskSpecPlacementInlineItemPreferencesInlineItemSpreadInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecPlacementInlineItemPreferencesInlineItemSpreadInlineItem {
#[serde(rename = "SpreadDescriptor")]
#[serde(skip_serializing_if = "Option::is_none")]
pub spread_descriptor: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecPluginSpecInlineItem {
#[serde(rename = "Disabled")]
#[serde(skip_serializing_if = "Option::is_none")]
pub disabled: Option<bool>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(rename = "PluginPrivilege")]
#[serde(skip_serializing_if = "Option::is_none")]
pub plugin_privilege: Option<Vec<PluginPrivilege>>,
#[serde(rename = "Remote")]
#[serde(skip_serializing_if = "Option::is_none")]
pub remote: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecResourcesInlineItem {
#[serde(rename = "Limits")]
pub limits: Option<Limit>,
#[serde(rename = "Reservations")]
pub reservations: Option<ResourceObject>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskSpecRestartPolicyInlineItem {
#[serde(rename = "Condition")]
#[serde(skip_serializing_if = "Option::is_none")]
pub condition: Option<String>,
#[serde(rename = "Delay")]
#[serde(skip_serializing_if = "Option::is_none")]
pub delay: Option<i64>,
#[serde(rename = "MaxAttempts")]
#[serde(skip_serializing_if = "Option::is_none")]
pub max_attempts: Option<i64>,
#[serde(rename = "Window")]
#[serde(skip_serializing_if = "Option::is_none")]
pub window: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum TaskSpecRestartPolicyInlineItemConditionInlineItem {
#[serde(rename = "none")]
None,
#[serde(rename = "on-failure")]
OnFailure,
#[serde(rename = "any")]
Any,
}
impl AsRef<str> for TaskSpecRestartPolicyInlineItemConditionInlineItem {
fn as_ref(&self) -> &str {
match self {
TaskSpecRestartPolicyInlineItemConditionInlineItem::None => "none",
TaskSpecRestartPolicyInlineItemConditionInlineItem::OnFailure => "on-failure",
TaskSpecRestartPolicyInlineItemConditionInlineItem::Any => "any",
}
}
}
impl std::fmt::Display for TaskSpecRestartPolicyInlineItemConditionInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum TaskState {
#[serde(rename = "new")]
New,
#[serde(rename = "allocated")]
Allocated,
#[serde(rename = "pending")]
Pending,
#[serde(rename = "assigned")]
Assigned,
#[serde(rename = "accepted")]
Accepted,
#[serde(rename = "preparing")]
Preparing,
#[serde(rename = "ready")]
Ready,
#[serde(rename = "starting")]
Starting,
#[serde(rename = "running")]
Running,
#[serde(rename = "complete")]
Complete,
#[serde(rename = "shutdown")]
Shutdown,
#[serde(rename = "failed")]
Failed,
#[serde(rename = "rejected")]
Rejected,
#[serde(rename = "remove")]
Remove,
#[serde(rename = "orphaned")]
Orphaned,
}
impl AsRef<str> for TaskState {
fn as_ref(&self) -> &str {
match self {
TaskState::New => "new",
TaskState::Allocated => "allocated",
TaskState::Pending => "pending",
TaskState::Assigned => "assigned",
TaskState::Accepted => "accepted",
TaskState::Preparing => "preparing",
TaskState::Ready => "ready",
TaskState::Starting => "starting",
TaskState::Running => "running",
TaskState::Complete => "complete",
TaskState::Shutdown => "shutdown",
TaskState::Failed => "failed",
TaskState::Rejected => "rejected",
TaskState::Remove => "remove",
TaskState::Orphaned => "orphaned",
}
}
}
impl std::fmt::Display for TaskState {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskStatusInlineItem {
#[serde(rename = "ContainerStatus")]
#[serde(skip_serializing_if = "Option::is_none")]
pub container_status: Option<TaskStatusInlineItemContainerStatusInlineItem>,
#[serde(rename = "Err")]
#[serde(skip_serializing_if = "Option::is_none")]
pub err: Option<String>,
#[serde(rename = "Message")]
#[serde(skip_serializing_if = "Option::is_none")]
pub message: Option<String>,
#[serde(rename = "State")]
pub state: Option<String>,
#[serde(rename = "Timestamp")]
#[serde(skip_serializing_if = "Option::is_none")]
pub timestamp: Option<DateTime<Utc>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TaskStatusInlineItemContainerStatusInlineItem {
#[serde(rename = "ContainerID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub container_id: Option<String>,
#[serde(rename = "ExitCode")]
#[serde(skip_serializing_if = "Option::is_none")]
pub exit_code: Option<isize>,
#[serde(rename = "PID")]
#[serde(skip_serializing_if = "Option::is_none")]
pub pid: Option<isize>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct ThrottleDevice {
#[serde(rename = "Path")]
#[serde(skip_serializing_if = "Option::is_none")]
pub path: Option<String>,
#[serde(rename = "Rate")]
#[serde(skip_serializing_if = "Option::is_none")]
pub rate: Option<i64>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct Volume {
#[serde(rename = "CreatedAt")]
#[serde(skip_serializing_if = "Option::is_none")]
pub created_at: Option<DateTime<Utc>>,
#[serde(rename = "Driver")]
pub driver: String,
#[serde(rename = "Labels")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_map")]
pub labels: HashMap<String, String>,
#[serde(rename = "Mountpoint")]
pub mountpoint: String,
#[serde(rename = "Name")]
pub name: String,
#[serde(rename = "Options")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_map")]
pub options: HashMap<String, String>,
#[serde(rename = "Scope")]
pub scope: String,
#[serde(rename = "Status")]
#[serde(skip_serializing_if = "Option::is_none")]
pub status: Option<HashMap<String, Value>>,
#[serde(rename = "UsageData")]
#[serde(skip_serializing_if = "Option::is_none")]
pub usage_data: Option<VolumeUsageDataInlineItem>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct VolumeCreateOptions {
#[serde(rename = "Driver")]
#[serde(skip_serializing_if = "Option::is_none")]
pub driver: Option<String>,
#[serde(rename = "DriverOpts")]
#[serde(skip_serializing_if = "Option::is_none")]
pub driver_opts: Option<HashMap<String, String>>,
#[serde(rename = "Labels")]
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<HashMap<String, String>>,
#[serde(rename = "Name")]
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct VolumeList200Response {
#[serde(rename = "Volumes")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub volumes: Vec<Volume>,
#[serde(rename = "Warnings")]
#[serde(default)]
#[serde(deserialize_with = "deserialize_nonoptional_vec")]
pub warnings: Vec<String>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct VolumePrune200Response {
#[serde(rename = "SpaceReclaimed")]
#[serde(skip_serializing_if = "Option::is_none")]
pub space_reclaimed: Option<i64>,
#[serde(rename = "VolumesDeleted")]
#[serde(skip_serializing_if = "Option::is_none")]
pub volumes_deleted: Option<Vec<String>>,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub enum VolumeScopeInlineItem {
#[serde(rename = "local")]
Local,
#[serde(rename = "global")]
Global,
}
impl AsRef<str> for VolumeScopeInlineItem {
fn as_ref(&self) -> &str {
match self {
VolumeScopeInlineItem::Local => "local",
VolumeScopeInlineItem::Global => "global",
}
}
}
impl std::fmt::Display for VolumeScopeInlineItem {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{}", self.as_ref())
}
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct VolumeUsageDataInlineItem {
#[serde(rename = "RefCount")]
pub ref_count: isize,
#[serde(rename = "Size")]
pub size: isize,
}
pub type ConfigUpdateBodyParam = ConfigSpec;
pub type ImageCommitContainerConfigParam = ContainerConfig;
pub type NodeUpdateBodyParam = NodeSpec;
pub type SecretUpdateBodyParam = SecretSpec;
pub type SwarmUpdateBodyParam = SwarmSpec;
pub type SystemAuthAuthConfigParam = AuthConfig;
pub type VolumeCreateVolumeConfigParam = VolumeCreateOptions;