#!/usr/bin/with-contenv bash
# shellcheck shell=bash

function wait_for_changes {
  inotifywait -rq \
    --event modify,move,create,delete \
    --excludei '\.(sample|md)' \
    "/config/nginx"
}

while wait_for_changes; do
  NGINX_CONF=()
  if ! grep -q "/config/nginx/nginx.conf" /etc/nginx/nginx.conf; then
    NGINX_CONF=("-c" "/config/nginx/nginx.conf")
  fi
  if /usr/sbin/nginx "${NGINX_CONF[@]}" -t; then
    echo "Changes to nginx config detected and the changes are valid, reloading nginx"
    /usr/sbin/nginx "${NGINX_CONF[@]}" -s reload
  else
    echo "Changes to nginx config detected but the changes are not valid, skipping nginx reload. Please fix your config."
  fi
done
