Open pavelzw opened 4 months ago
This is not a bug in this collection since we do not support podman-docker. If something works fine with podman-docker you're lucky, but if it does not it's not a bug for this collection.
Your playbook doesn't look like it could ever work anyway:
docker compose
instead of docker-compose
to access Compose.You don't seem to be starting podman's docker socket. With that docker-compose won't be able to access podman as Docker.
I am, only forgot to include this in the reproducer
It uses docker compose instead of docker-compose to access Compose.
actually, docker compose
also invokes the docker-compose
binary in some way on my system 🤔
It uses docker compose instead of docker-compose to access Compose.
actually,
docker compose
also invokes thedocker-compose
binary in some way on my system 🤔
Then that aspect should be fine, but as long as podman version
does not provide the Docker API version, the module will still not work. (The module also expects docker info
to provide the Compose plugin's version; podman info
doesn't seem to do that, so this would probably be the next thing that fails.)
I believe it would be valuable if podman could also be supported by this module. What would be required for the module to test for capabilities rather than a version string?
Skipping the API version check is pretty easy to implement, but as I wrote above, the big problem will be the capabilities based Compose check, which doesn't work since podman info
isn't providing that information at all.
SUMMARY
The plugin fails when using
podman-docker
because it expects a specific format output format indocker version --format '{{ json . }}'
which is not supported by `podman-docker:https://github.com/ansible-collections/community.docker/blob/eddeb916973dbbd82298132bed285f803bd505d1/plugins/module_utils/common_cli.py#L83
ISSUE TYPE
COMPONENT NAME
community.docker/plugins/module_utils/common_cli.py
ANSIBLE VERSION
COLLECTION VERSION
CONFIGURATION
OS / ENVIRONMENT
macOS M1
target OS: fedora 40 with
podman
andpodman-docker
installedSTEPS TO REPRODUCE
EXPECTED RESULTS
This should go through
ACTUAL RESULTS