#!/usr/bin/env bash
# Démarre Umami en local (Docker).
# Usage : ./scripts/umami-local.sh [up|down|logs|bootstrap]

set -euo pipefail

ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
COMPOSE_DIR="$ROOT/infra/umami"
ENV_FILE="$COMPOSE_DIR/.env"

if [[ ! -f "$ENV_FILE" ]]; then
	UMAMI_APP_SECRET="$(openssl rand -hex 32)"
	UMAMI_DB_PASSWORD="$(openssl rand -hex 16)"
	cat >"$ENV_FILE" <<EOF
UMAMI_APP_SECRET=${UMAMI_APP_SECRET}
UMAMI_DB_PASSWORD=${UMAMI_DB_PASSWORD}
EOF
	echo "Créé $ENV_FILE"
fi

cmd="${1:-up}"

case "$cmd" in
	up)
		docker compose -f "$COMPOSE_DIR/docker-compose.yml" --env-file "$ENV_FILE" up -d
		echo "Umami local : http://127.0.0.1:3000 (admin / umami)"
		;;
	down)
		docker compose -f "$COMPOSE_DIR/docker-compose.yml" --env-file "$ENV_FILE" down
		;;
	logs)
		docker compose -f "$COMPOSE_DIR/docker-compose.yml" --env-file "$ENV_FILE" logs -f umami
		;;
	bootstrap)
		"$ROOT/scripts/umami-bootstrap.sh" "http://127.0.0.1:3000" local
		;;
	*)
		echo "Usage: $0 [up|down|logs|bootstrap]" >&2
		exit 1
		;;
esac
