#!/usr/bin/env bash
set -uo pipefail

HOOK_DIR="${LEGO_POST_DIR:-/etc/lego/post}"
result=0

[[ -d "${HOOK_DIR}" ]] || exit 0

while IFS= read -r -d '' hook; do
    [[ -x "${hook}" ]] || continue
    printf 'Running lego post-hook: %s\n' "${hook}"

    if ! "${hook}"; then
        printf 'Lego post-hook failed: %s\n' "${hook}" >&2
        result=1
    fi
done < <(
    find -L "${HOOK_DIR}" -mindepth 1 -maxdepth 1 -type f -print0 | sort -z
)

exit "${result}"
