diff options
Diffstat (limited to 'src/lib.rs')
-rw-r--r-- | src/lib.rs | 82 |
1 files changed, 68 insertions, 14 deletions
@@ -17,7 +17,6 @@ //! # }; //! ``` -pub mod builder; pub mod errors; pub mod rep; pub mod transport; @@ -36,19 +35,74 @@ mod tarball; pub use hyper::Uri; pub use crate::{ - builder::{ - BuildOptions, ContainerConnectionOptions, ContainerFilter, ContainerListOptions, - ContainerOptions, EventsOptions, ExecContainerOptions, ExecResizeOptions, ImageFilter, - ImageListOptions, LogsOptions, NetworkCreateOptions, NetworkListOptions, PullOptions, - RegistryAuth, RmContainerOptions, ServiceFilter, ServiceListOptions, ServiceOptions, - TagOptions, VolumeCreateOptions, + container::{ + Container, ContainerFilter, ContainerListOptions, ContainerOptions, Containers, + LogsOptions, RmContainerOptions, }, - container::{Container, Containers}, - docker::Docker, + docker::{Docker, EventsOptions}, errors::{Error, Result}, - exec::Exec, - image::{Image, Images}, - network::{Network, Networks}, - service::{Service, Services}, - volume::{Volume, Volumes}, + exec::{Exec, ExecContainerOptions, ExecResizeOptions}, + image::{ + BuildOptions, Image, ImageFilter, ImageListOptions, Images, PullOptions, RegistryAuth, + TagOptions, + }, + network::{ + ContainerConnectionOptions, Network, NetworkCreateOptions, NetworkListOptions, Networks, + }, + service::{Service, ServiceFilter, ServiceListOptions, ServiceOptions, Services}, + transport::Transport, + volume::{Volume, VolumeCreateOptions, Volumes}, }; + +macro_rules! reexport { + (@alias $module:ident :: $item:ident) => { + reexport!(@alias $module::$item as $item); + }; + (@alias $module:ident :: $item:ident as $old_item:ident) => { + ::paste::paste! { + #[deprecated( + since = "0.8.0", + note = "Please use `shiplift::" $module "::" $item "`. " + "This will be removed in 0.9.0." + )] + pub type $old_item = $crate::$module::$item; + } + }; + (mod $old_module:ident; $( $module:ident :: {$( $item:ident $(as $old_item:ident)? ),*$(,)?} ; )*) => { + #[deprecated( + since = "0.8.0", + note = "Please use `shiplift::{container, docker, exec, image, network, service, volume}` as appropriate. This will be removed in 0.9.0." + )] + pub mod $old_module { + $($( reexport!(@alias $module::$item $(as $old_item)?); )*)* + } + }; +} + +reexport! { + mod builder; + container::{ + ContainerListOptions, ContainerListOptionsBuilder, ContainerOptions, + ContainerOptionsBuilder, LogsOptions, LogsOptionsBuilder, RmContainerOptions, + RmContainerOptionsBuilder, + }; + docker::{EventsOptions, EventFilterType, EventFilter, EventsOptionsBuilder}; + exec::{ + ExecContainerOptions, ExecContainerOptionsBuilder, ExecResizeOptions, + ExecResizeOptionsBuilder, + }; + image::{ + RegistryAuth, RegistryAuthBuilder, TagOptions, TagOptionsBuilder, PullOptions, + PullOptionsBuilder, BuildOptions, BuildOptionsBuilder, ImageFilter, ImageListOptions, + ImageListOptionsBuilder, + }; + network::{ + NetworkListOptions, NetworkCreateOptions, NetworkCreateOptionsBuilder, + ContainerConnectionOptions, ContainerConnectionOptionsBuilder, + }; + service::{ + ServiceListOptions, ServiceFilter, ServiceListOptionsBuilder, ServiceOptions, + ServiceOptionsBuilder, + }; + volume::{VolumeCreateOptions, VolumeCreateOptionsBuilder}; +} |