SHELL := /bin/bash

DEPLOYMENT_MODE := $(shell grep -E '^DEPLOYMENT_MODE=' .env 2>/dev/null | cut -d= -f2 | tr -d '"' || true)
ifeq ($(DEPLOYMENT_MODE),)
	DEPLOYMENT_MODE := direct
endif

ifeq ($(DEPLOYMENT_MODE),proxy)
	COMPOSE_FILE := docker-compose.proxy.yml
else
	COMPOSE_FILE := docker-compose.direct.yml
endif

COMPOSE := docker compose -f $(COMPOSE_FILE)

.PHONY: deploy setup dev prod logs restart

deploy:
	./deploy.sh

setup: deploy

dev:
	$(COMPOSE) up --build

prod:
	$(COMPOSE) up -d --build
	$(COMPOSE) build calbook-tools
	$(COMPOSE) run --rm calbook-tools npm run prisma:generate
	$(COMPOSE) run --rm calbook-tools npm run prisma:migrate || $(COMPOSE) run --rm calbook-tools npm run prisma:push
	$(COMPOSE) run --rm calbook-tools npm run db:seed

logs:
	$(COMPOSE) logs -f calbook-app db

restart:
	$(COMPOSE) up -d --build calbook-app
