# Makefile

# declare phony targets
.PHONY: build test typecheck

# run locally (uses --local-stacosys if stacosys is running on port 8100)
site:
	@if curl -s --connect-timeout 1 http://127.0.0.1:8100/api > /dev/null 2>&1; then \
		uv run python makesite.py --local-stacosys; \
	else \
		uv run python makesite.py --local; \
	fi
	cd _site && python -m SimpleHTTPServer 2> /dev/null || python3 -m http.server

# run type checks
typecheck:
	uv run mypy makesite.py monitor.py

# run unit tests
test:
	uv run python -m unittest discover test -v

# docker build image
build:
	@echo "Running type checks..."
	uv run mypy makesite.py monitor.py
	@echo "Running tests..."
	uv run python -m unittest discover test -v
	@echo "Building Docker image..."
	docker build -t source.madyanne.fr/yax/blog .	
		
# docker publish image
publish:
	docker push source.madyanne.fr/yax/blog

