1pub mod errors;
25pub mod transport;
26pub mod tty;
27
28pub mod container;
29pub mod docker;
30pub mod exec;
31pub mod image;
32pub mod network;
33pub mod service;
34pub mod volume;
35
36mod tarball;
37
38#[cfg(feature = "chrono")]
39mod datetime;
40
41pub use hyper::Uri;
42
43pub use crate::{
44 container::{
45 Container, ContainerFilter, ContainerListOptions, ContainerOptions, Containers,
46 LogsOptions, RmContainerOptions,
47 },
48 docker::{Docker, EventsOptions},
49 errors::{Error, Result},
50 exec::{Exec, ExecContainerOptions, ExecResizeOptions},
51 image::{
52 BuildOptions, Image, ImageFilter, ImageListOptions, Images, PullOptions, PushOptions, RegistryAuth,
53 TagOptions,
54 },
55 network::{
56 ContainerConnectionOptions, Network, NetworkCreateOptions, NetworkListOptions, Networks,
57 },
58 service::{Service, ServiceFilter, ServiceListOptions, ServiceOptions, Services},
59 transport::Transport,
60 volume::{Volume, VolumeCreateOptions, Volumes},
61};
62
63macro_rules! reexport {
64 (@alias $module:ident :: $item:ident) => {
65 reexport!(@alias $module::$item as $item);
66 };
67 (@alias $module:ident :: $item:ident as $old_item:ident) => {
68 ::paste::paste! {
69 #[deprecated(
70 since = "0.8.0",
71 note = "Please use `docker_sdk::" $module "::" $item "`. "
72 "This will be removed in 0.9.0."
73 )]
74 pub type $old_item = $crate::$module::$item;
75 }
76 };
77 (mod $old_module:ident; $( $module:ident :: {$( $item:ident $(as $old_item:ident)? ),*$(,)?} ; )*) => {
78 #[deprecated(
79 since = "0.8.0",
80 note = "Please use `docker_sdk::{container, docker, exec, image, network, service, volume}` as appropriate. This will be removed in 0.9.0."
81 )]
82 pub mod $old_module {
83 $($( reexport!(@alias $module::$item $(as $old_item)?); )*)*
84 }
85 };
86}
87
88reexport! {
89 mod builder;
90 container::{
91 ContainerListOptions, ContainerListOptionsBuilder, ContainerOptions,
92 ContainerOptionsBuilder, LogsOptions, LogsOptionsBuilder, RmContainerOptions,
93 RmContainerOptionsBuilder,
94 };
95 docker::{EventsOptions, EventFilterType, EventFilter, EventsOptionsBuilder};
96 exec::{
97 ExecContainerOptions, ExecContainerOptionsBuilder, ExecResizeOptions,
98 ExecResizeOptionsBuilder,
99 };
100 image::{
101 RegistryAuth, RegistryAuthBuilder, TagOptions, TagOptionsBuilder, PullOptions,
102 PullOptionsBuilder, BuildOptions, BuildOptionsBuilder, ImageFilter, ImageListOptions,
103 ImageListOptionsBuilder,
104 };
105 network::{
106 NetworkListOptions, NetworkCreateOptions, NetworkCreateOptionsBuilder,
107 ContainerConnectionOptions, ContainerConnectionOptionsBuilder,
108 };
109 service::{
110 ServiceListOptions, ServiceFilter, ServiceListOptionsBuilder, ServiceOptions,
111 ServiceOptionsBuilder,
112 };
113 volume::{VolumeCreateOptions, VolumeCreateOptionsBuilder};
114}
115
116reexport! {
117 mod rep;
118 container::{
119 ContainerInfo as Container, ContainerDetails, Mount, State, HostConfig, Port, Stats,
120 MemoryStats, MemoryStat, NetworkStats as Network, CpuStats, CpuUsage, ThrottlingData, BlkioStats, BlkioStat, Change,
121 Top, ContainerCreateInfo, Exit,
122 };
123 docker::{Version, Info, Event, Actor};
124 exec::{ExecDetails, ProcessConfig};
125 image::{
126 SearchResult, ImageInfo as Image, ImageDetails, ContainerConfig, History, Status,
127 };
128 network::{
129 NetworkSettings, NetworkEntry, Ipam, NetworkDetails,
130 NetworkContainerDetails, NetworkCreateInfo,
131 };
132 service::{
133 ServicesInfo as Services, ServiceInfo as Service, ObjectVersion, Endpoint, EndpointSpec,
134 EndpointPortConfig, UpdateStatus, ServiceStatus, JobStatus, ServiceDetails, ServiceSpec,
135 TaskSpec, Mode, Replicated, ReplicatedJob, UpdateConfig, RollbackConfig,
136 NetworkAttachmentConfig, ServiceCreateInfo,
137 };
138 volume::{VolumeCreateInfo, VolumesInfo as Volumes, VolumeInfo as Volume};
139}