#!/usr/bin/env bash
# cek-kesehatan.sh — health check HTTP dengan timeout dan retry.
# Pemakaian: bash cek-kesehatan.sh <url> [jumlah-percobaan]
url="${1:-}"
maks="${2:-3}"

if [ -z "$url" ]; then
    echo "pemakaian: bash cek-kesehatan.sh <url> [percobaan]" >&2
    exit 0
fi

for i in $(seq 1 "$maks"); do
    kode=$(curl -s -o /dev/null -w '%{http_code}' --max-time 2 "$url")
    if [ "$kode" = "200" ]; then
        echo "SEHAT (HTTP $kode)"
        exit 0
    fi
    echo "percobaan $i/$maks gagal (HTTP $kode)"
    [ "$i" -lt "$maks" ] && sleep 1
done

echo "TIDAK SEHAT ($maks/$maks gagal)"
exit 1
