faradayio / boondock

Docker daemon API in Rust
43 stars 14 forks source link

Pass expected protocol versions to Docker? #6

Open emk opened 7 years ago

emk commented 7 years ago

Looking at the Docker source code, it seems like the daemon actually supports multiple protocol versions. Is there some way to tell it what version we're expecting to see?

griff commented 6 years ago

https://docs.docker.com/engine/api/v1.33/#section/Versioning

emk commented 6 years ago

Ah, cool! If you need this right away, please feel free to submit a PR and try to review it as promptly as I can.

griff commented 6 years ago

What version is boondock expecting?

emk commented 6 years ago

That's an excellent question. Probably whatever was current when I last made a bunch of commits, although it still seems to work with recent Docker CE distributions. So the best we can do is guess a version, run the unit tests, and see if it works.

boondock is used by cage, which we use on a daily basis at Faraday.io. So if any of the code paths that cage needs are failure, we'll fix them quickly. If other stuff breaks, we probably won't know about them, and we may or may not have time fix them ourselves, depending on what we're doing internally. But we're always happy to review PRs, merge them, and make new releases if boondock breaks for anybody else's use cases. We are willing to consider adding non-Faraday maintainers after reviewing people's first few pull requests.

Docker's API is huge, odd and poorly documented, so the only way that we're going get full coverage is for multiple users to work together.