#!/usr/bin/env bash # test-container.sh # Usage: ./test-container.sh container_name container="$1" test_name="testing-${container}" compose_script="/home/nixos/docker/services-up.sh" # Run container in detached mode $compose_script --profile all run -d --name "$test_name" --rm --build "$container" # Poll health status timeout=60 # seconds interval=2 # seconds elapsed=0 while [ $elapsed -lt $timeout ]; do status=$(docker inspect --format='{{.State.Health.Status}}' "$test_name" 2>/dev/null) if [ "$status" == "healthy" ]; then echo "healthy" break elif [ "$status" == "unhealthy" ]; then echo "unhealthy" break fi sleep $interval elapsed=$((elapsed + interval)) done # Cleanup docker rm -f "$test_name" >/dev/null 2>&1