diff options
| author | Robert Günzler <r@gnzler.io> | 2026-02-23 14:12:22 +0100 |
|---|---|---|
| committer | Robert Günzler <r@gnzler.io> | 2026-02-23 14:12:36 +0100 |
| commit | 4fa05f4c140205450f63337626680c65f2879896 (patch) | |
| tree | 889c0b239eea1e98aa7b2290b1db2028a4cb34aa /bundles/svtree-containers/files/bin/podman-healthcheck | |
| parent | 090a357ef46473e76b0cd0e0e1b013e6080a7360 (diff) | |
replace containers,www with svtree modules equivalents
Signed-off-by: Robert Günzler <r@gnzler.io>
Diffstat (limited to 'bundles/svtree-containers/files/bin/podman-healthcheck')
| -rwxr-xr-x | bundles/svtree-containers/files/bin/podman-healthcheck | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/bundles/svtree-containers/files/bin/podman-healthcheck b/bundles/svtree-containers/files/bin/podman-healthcheck new file mode 100755 index 0000000..ab3dcc7 --- /dev/null +++ b/bundles/svtree-containers/files/bin/podman-healthcheck @@ -0,0 +1,32 @@ +#!/bin/sh +set -eu +[ -n "${DEBUG:-}" ] && set -x + +healthcheck() { + local container=${1:?} + + podman healthcheck run "$container" >/dev/null 2>&1 || true + + podman inspect --format '{{if .State.Health}}{{.Name}} {{.State.Health.Status}}{{end}}' "$container" | ( + read -r name status + + test -n "$name" || return + + printf '%s (%s) is %s\n' "$container" "$name" "$status" + case "$status" in + healthy) ;; + *) + # tgnotify "!!! service $container unhealthy" + ;; + esac + ) +} + +main() { + case "${1:-}" in + "") podman container ls --format '{{.ID}}' | xargs -n1 $0 ;; + *) healthcheck "$1" ;; + esac +} + +main $@ |