.PHONY: wizard prepare verify pull up down ps logs restart install-cli uninstall-cli

# Target workspace directory. Override on the command line:
#   make prepare DIR=~/Development/care-workspace
DIR ?= ../care-workspace

# Where `make install-cli` symlinks the c-* scripts. Override with:
#   make install-cli BIN=~/bin
BIN ?= $(HOME)/.local/bin

wizard:
	uv run wizard.py --workspace $(DIR)

prepare:
	uv run prepare.py $(DIR)

verify:
	uv run prepare.py $(DIR) --verify-only

pull:
	uv run prepare.py $(DIR) --pull-only

up:
	uv run services.py $(DIR) up

down:
	uv run services.py $(DIR) down

ps:
	uv run services.py $(DIR) ps

logs:
	uv run services.py $(DIR) logs

restart:
	uv run services.py $(DIR) restart

install-cli:
	@mkdir -p "$(BIN)"
	@for f in bin/c-*; do \
		name="$$(basename $$f)"; \
		ln -sfn "$(CURDIR)/$$f" "$(BIN)/$$name"; \
		echo "  linked $(BIN)/$$name"; \
	done
	@echo
	@echo "Ensure $(BIN) is on PATH, e.g. in ~/.zshrc:"
	@echo "  export PATH=\"$(BIN):\$$PATH\""

uninstall-cli:
	@for f in bin/c-*; do \
		name="$$(basename $$f)"; \
		rm -f "$(BIN)/$$name" && echo "  removed $(BIN)/$$name"; \
	done
