summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
2021-04-27Display error message for `Error::Fault` (#292)Clemens Winter
2021-04-09Fix clippy: Allow upper case acronym hereMatthias Beyer
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2021-04-09Merge pull request #279 from wojciechkepka/docsMatthias Beyer
Add Docker API reference hyperlinks to doc comments
2021-04-09Merge pull request #284 from wojciechkepka/fix_clippyMatthias Beyer
Fix clippy lints
2021-04-07Allow uppercase acronyms for Error::IOWojciech Kępka
2021-04-07Rename `IPAM` to `Ipam`Wojciech Kępka
2021-03-11Add missing fields to NetworkEntrywojciechkepka
2021-03-11Add Docker API reference hyperlinks to doc commentswojciechkepka
2021-03-08Split up rep.rsEli W. Hunter
2021-03-08Split up builder.rsEli W. Hunter
2021-03-08Split up lib.rsEli W. Hunter
2021-03-08Merge pull request #273 from matthiasbeyer/fix-docMatthias Beyer
Fix: Dot should be in quotes
2021-03-08Merge pull request #277 from matthiasbeyer/add-safe-containers-getMatthias Beyer
Add Containers::get_checked() for getting an existing container
2021-03-08Add Containers::get_checked() for getting an existing containerMatthias Beyer
Containers::get() does always return a handle to a container, which might be invalid. This function checks whether the container exists before returning either a Some(Container) or None. Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2021-03-06Add warning to Containers::get() methodMatthias Beyer
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2021-02-22Fix: Dot should be in quotesMatthias Beyer
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2021-02-21Add missing fields to `ImageDetails` and `History` (#264)Abc Xyz
* Add missing fields to `ImageDetails` and `History` * Make some fields in `ContainerConfig` required
2021-02-21Fix `entrypoint` field in ContainerOptions (#269)Wojciech Kępka
* Fix `entrypoint` field in ContainerOptions * Update CHANGELOG Co-authored-by: Doug Tangren <d.tangren@gmail.com>
2021-02-20Fix lifetimes (#272)Eli W. Hunter
* Some changes * Clarify lifetimes in transport.rs * Fix remaining easy lifetimes in lib.rs * Refactor Images::build for new lifetimes to work * Fix Exec::start() * Fix Container::exec() * Make header_bytes not a Vec * Make Docker::{images,...}() lifetimes explicit * Fix Containers::get() * Remove unnecessary locals from examples * Update changelog * Appease clippy
2021-02-08Add services api (#263)Wojciech Kępka
* Add initial Services models * Add initial Services controllers * Add ServicesListOptions * Rename ServicesList -> ServiceList * Fix some optional fields on ServiceRep * Add Service::inspect * Add Service::delete * Add Service::logs * Rename example logs -> containerlogs * Add ServiceOptions, ServiceCreateInfo, fix typo * Add a way to pass headers to request, add Payload and Headers for easier types * Add Service::create * Add examples * Fix fmt * Fix example
2021-02-06Simplify api, get rid of unnecessary lifetimes (#252)Wojciech Kępka
* Get rid of explicit lifetimes * more lifetimes ellided * Fix examples * Minor fix
2021-02-06Add Exec struct for easier manipulation of exec instances (#251)Wojciech Kępka
* Add ExecDetails and ProcessConfig * Add exec_with_id, exec_inspect * Add example how to inspect an exec instance * Make clippy happy * exit_code is an Option on ExecDetails * Add Exec struct * Update example * Fix typo * Add Exec::resize and ExecResizeOptions * Add resize example
2021-02-06Image::import argument tarball is now generic (#253)Wojciech Kępka
2021-01-23Add Stop{Signal,Timeout} to ContainerOptionsBuilder (#248)Eli W. Hunter
2021-01-15Upgrade all dependencies (#246)maowtm
* Upgrade dependencies and add required features * Special case for parsing unix:// url in Docker::new hyper::Uri doesn't allow urls with empty authority, hence parsing unix:///var/run/docker.sock will fail. * Remove empty /lib.rs * Fix cargo fmt
2021-01-12Fix X-Registry-Auth header (#245)Valentine Valyaeff
2021-01-10update gh actions ci and fix ci lint errors (#244)Doug Tangren
* update gh actions ci and fix ci lint errors * trigger also on master for now
2021-01-09Allow `Image::pull` to handle chunks with multiple JSON values (#240)Tom Fay
* add fn for stream post that returns json values use when pulling docker images, to fix bug where shiplift would error if multiple JSON values were returned in a single HTTP chunk * fix unnecessary lazy evaluation * add comments to stream post requests
2021-01-09ContainerOptionsBuilder::env() should not get owned Vec (#237)Matthias Beyer
This type signature makes it impossible to dynamically construct a Vec<String> of environment variables and pass it to the builder. This patch tries to fix that by making the function only take a reference to a slice containing the environments. Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2021-01-09Implement upload of tar to container (#239)Dustin Frisch
* Implement upload of tar to container * Fixed typo Co-authored-by: Eli W. Hunter <42009212+elihunter173@users.noreply.github.com> Co-authored-by: Eli W. Hunter <42009212+elihunter173@users.noreply.github.com>
2020-11-10Enable streaming results over UNIX sockets (#166) (#238)Dustin Frisch
2020-09-01Implement multiple chunk streams in build function for images (#232)Hampus Lidin
Co-authored-by: Hampus Lidin <hampus.lidin@astrazeneca.com>
2020-07-28Add nano_cpus and memory_swap to ContainerOptions (#231)Eli W. Hunter
* Add nano_cpus to ContainerOptionsBuilder * Add memory_swap to ContainerOptionsBuilder
2020-07-23Async/Await Support (continuation of #191) (#229)Eli W. Hunter
* it builds! * remove unused dependencies * bump dependencies * reimplement 'exec' endpoint * update a few more examples * update remaining examples * fix doc tests, remove unused 'read' module * remove feature-gated async closures * split futures dependency to just 'futures-util' * update version and readme * make functions accepting Body generic over Into<Body> again * update changelog * reinstate 'unix-socket' feature * reinstate 'attach' endpoint * fix clippy lints * fix documentation typo * fix container copyfrom/into implementations * add convenience methods for TtyChunk struct * remove 'main' from code example to silence clippy lint * Update hyper to 0.13.1 * Add Send bounds to TtyWriter * Appease clippy * Fix examples * Update issue in changelog Co-authored-by: Daniel Eades <danieleades@hotmail.com> Co-authored-by: Marc Schreiber <marc.schreiber@aixigo.de>
2020-03-19Specify user when creating container (#220)Tom Fay
2020-03-19Add status field to container State (#221)Colvin Wellborn
2020-03-19Add repo_tags, repo_digests fields to ImageDetails (#222)Colvin Wellborn
2020-03-19appease clippy (#225)Colvin Wellborn
2020-03-19Update errors to match current Error trait (#223)Colvin Wellborn
- `description` is deprecated, and now with the 1.42 stable release these are generating warnings - `cause` is deprecated and replaced by `source`
2020-03-19Fix formatting (#224)Colvin Wellborn
Ran `cargo +nightly fmt --all` as indicated in the PR template. Since this affects code not otherwise being modified, I did this as a separate PR.
2020-01-04make image and container option builder interfaces consistent (#211)Colvin Wellborn
`ContainerListOptionsBuilder::all()` took no arguments, assuming a true value. However, `ImageListOptionsBuilder::all()` accepts a boolean. To make these consistent, the latter no longer accepts a boolean and, like the former, assumes true.
2019-12-26Re-export hyper::Uri as shiplift::Uri (#209)Thomas Eizinger
This patch removes the explicit dependency on the http crate and instead accesses the re-exported version of hyper. This should make the update process slightly easier because those versions would need to be kept in sync manually. We also re-export hyper::Uri as shiplift::Uri because it is part of the public API of shiplift::Docker. This allows users to access the Uri type without having to seperately depend on http or hyper.
2019-12-26Update the ContainerOptionsBuilder with new publish all ports option (#215)Tyler Jones
The following change is to provide the configuration option `PublishAllPorts` which will map all exposed ports on a container to random and available ports on the host machine. This configuration option is documented [here](https://docs.docker.com/engine/api/v1.39/#operation/ContainerCreate).
2019-12-26Expand rep::Version (#212)Colvin Wellborn
* expand the fields of Version Expands `shiplift::rep::Version` to contain fields for the following elements of the `/version` API: - `min_api_version` (`MinAPIVersion`) - `os` (`Os`) - `arch` (`Arch`) - `kernel_version` (`KernelVersion`) - `build_time` (`BuildTime`) Adds a new example program to display version information. * order version fields according to api docs * remove min_api_version For backwards compat with older engines, remove the `min_api_version` field. It was apparently added in API version `1.25.0` (circa 2017).
2019-12-18expand rep::Container fields (#213)Colvin Wellborn
Add missing fields to `rep::Container`: - `image_id` (`ImageID`, API version 1.21) - `state` (`State`, API version 1.23)
2019-12-06port build to gh actions (#204)Doug Tangren
* port build to gh actions * attempt 2: trip hook registration * hooked to pushes * gh actions badge * build cache * gate at job level * fix badge merge * populate cache after checkout * work now cache later
2019-12-05Don't vendor OpenSSL except on Windows (#197)Andy Caldwell
* Don't vendor OpenSSL except on Windows * Use a feature rather than guessing based on OS
2019-12-05Replace host str to use https if encrypted (#193)Lucio Franco
* Replace host str to use https if encrypted * Add comment and fmt
2019-10-13Add 'publish' method to expose a port (#198)Anthony Griffon
* Renamed 'expose' to 'port' and add 'expose' to expose a port without linking it to the host * update Version to 0.5.1
2019-10-13Correctly rename `endpoint_id` field (#196)Pit
The `endpoint_id` field is stylized as `EndpointID` in the Docker API when returning container-details for a network ([1]). [1]: https://docs.docker.com/engine/api/v1.24/#35-networks