33 lines
1010 B
Bash
Executable File
33 lines
1010 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
echo "::group::docker ps -a"
|
|
docker ps -a --format 'table {{.Names}}\t{{.Image}}\t{{.Status}}'
|
|
echo "::endgroup::"
|
|
|
|
dump_container_logs() {
|
|
local pattern="$1"
|
|
local label="$2"
|
|
local found=0
|
|
|
|
while IFS= read -r container_name; do
|
|
if [[ -z "$container_name" ]]; then
|
|
continue
|
|
fi
|
|
|
|
found=1
|
|
echo "::group::${label}: ${container_name}"
|
|
docker inspect "$container_name" --format 'State={{json .State}}' || true
|
|
docker logs --tail=500 "$container_name" || true
|
|
echo "::endgroup::"
|
|
done < <(docker ps -a --format '{{.Names}}' | grep -E "$pattern" || true)
|
|
|
|
if [[ "$found" -eq 0 ]]; then
|
|
echo "No containers matched ${label} pattern: ${pattern}"
|
|
fi
|
|
}
|
|
|
|
dump_container_logs '^ghost-e2e-worker-' 'Ghost worker'
|
|
dump_container_logs '^ghost-e2e-gateway-' 'E2E gateway'
|
|
dump_container_logs '^ghost-dev-(mysql|redis|mailpit|analytics|analytics-db|tinybird-local|tb-cli)$' 'E2E infra'
|