Fails to handle the `service_healthy` condition of a `depends_on` element
Describe the bug
podman-compose fails to handle the service_healthy condition of a depends_on element.
To Reproduce Steps to reproduce the behavior:
- Create the following
docker-compose.ymlfile
services:
base:
image: docker.io/debian
command: [ "tail", "-f", "/dev/null" ]
healthcheck:
test: [ "CMD", "false" ]
interval: 30s
timeout: 30s
retries: 3
start_period: 1m
dependent:
image: docker.io/debian
depends_on:
base:
condition: service_healthy
command: [ "tail", "-f", "/dev/null" ]
- Run
podman-compose -f docker-compose.yml up -din the containing directory
Expected behavior
The container corresponding to the dependent service never starts since the base can never be healthy.
Actual behavior
The container corresponding to the dependent service always starts.
Output
podman-compose version
podman-compose version: 1.0.6
['podman', '--version', '']
using podman version: 4.3.1
podman-compose version 1.0.6
podman --version
podman version 4.3.1
exit code: 0
Environment:
- OS: Debian GNU/Linux 12 (bookworm)
- podman version: 4.3.1
- podman compose version: 1.0.6
Could be a duplicate, as the correct implementation of healthchecks is actually a 5-year-old issue: https://github.com/containers/podman-compose/issues/23
I am hitting now the same bug: I have a container that is supposed to start when 4 previous containers are up and healthy, and instead it starts right away :-/