-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add unmaintained notice #2989
Add unmaintained notice #2989
Conversation
Signed-off-by: Stefan Scherer <[email protected]>
Will the |
So... you're just not going to support it at all now? |
@yaleman They probably just abandoning using Python, given that they have a golang docker library already. Same thing happened with Docker Compose which is now Golang based. |
Thanks for your interest and your feedback so far. It's not decided yet that we merge this PR. |
Hi @StefanScherer! Do you have any updates for us? Thank you! |
That would be nice to be merged as it would give some clarity on whether one should consider build their using this library. |
Any news? It really is a pity that this great package seems to be dead-ish atm. |
I made Python-on-whales, a Python Docker client that's much easier to maintain because it calls the Docker client binary (in go) behind the scenes. It has made the users happy so far by also providing access to buildx, compose, podman, nerdctl and There was a blog post in the Docker blog a while ago about it, to do this, I talked to folks at Docker to get some guidance about the project. Maybe we could add a note saying that this project exists and is maintained, even if we don't actively recommend it. At least it provides an escape route for projects that heavily rely on Docker-py. At the time of writing it has 223 stars, ~3500 downloads daily, 21 contributors, 1 core dev (me). |
@gabrieldemarmiesse thanks i have moved my code to your library and everything works well :) |
For everyone else following this one who didn't notice, there's been a lot of activity in this repository over the last couple of days. So maybe this PR isn't needed anymore? |
We've reserved some capacity to make another release. Closing this PR. Thanks for your patience. |
Previously, Docker was controlled through custom shell commands issued via `pytest-testinfra`. Multiple loops where used to wait for containers to converge to the desired state. Given the test requires quite some resources in terms of RAM, CPU, and bandwith, its execution can take between 20 minutes and a full hour. Therefore, it would be better to avoid having to edit the code to fiddle with timeouts and loop counts. One of the way we used to wait for completion was looking at the Docker service logs for specific messages. Sadly, `pytest-testinfra` does not really provide a way to monitor the output of a command as it runs. All-in-all, it felt easier to replace the custom shell commands by a library offering a Python API to control Docker. While `dockerpy` is the official library, its future maintainance by Docker has been in flux (see: docker/docker-py#2989) and more importantly, as it speaks directly to the Docker socket, it does not support anything like `docker stack`. Meanwhile, the `python_on_whales` has been featured on the official Docker blog (https://www.docker.com/blog/guest-post-calling-the-docker-cli-from-python-with-python-on-whales/) and implements as much as possible of Docker command line interface (by shelling out). With it, it was possible to: - Replace all command lines with Python calls. - Wait for containers to shut down on teardown before removing volumes. - Wait for log messages to appear by blocking on the service output. - Wait for Docker readyness when we start the stack and scale services. Some refactoring and naming improvements have been made along the way. Some leftover breakpoints were also removed. Because we still would like to timeout in case of a problem, `pytest-timeout` has been added to the requirements with a default timeout of 30 minutes.
Signed-off-by: Stefan Scherer [email protected]