Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I'm not very good with python but I figured this should fix some issues happening when running locally with Podman.
I'm also not sure how it behaves with Docker or other alternatives (like Colima).
Which issue(s) does this change fix?
#7298
Why is this change necessary?
Calling the events function from the main thread will block until it receives data as docker-py uses urllib3.openurl under the hood which is blocking (read).
It can be replicated using
curl
:The above will block until it receives data.
How does it address the issue?
We don't want to block the main thread, so moving the self.events assignment in a thread (the function that actually watches for changes) seems to be the solution.
What side effects does this change have?
I can't see any side effect this would introduce.
Mandatory Checklist
PRs will only be reviewed after checklist is complete
make pr
passesmake update-reproducible-reqs
if dependencies were changedBy submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.