VERSION := $(shell git describe --tags --always)
IMAGE_NAME := fitguide

sync:
	uv sync --extra dev

seed:
	uv run alembic upgrade head
	uv run python -m scripts.seed

dev:
	uv run uvicorn app.main:app --reload
	open http://localhost:8000

test:
	uv run pytest

migrate:
	# apply the bundled initial migration
	uv run alembic upgrade head

fmt:
	uv run black .

docker:
		mkdir -p artifacts
		docker build -t $(IMAGE_NAME):$(VERSION) .
		docker tag $(IMAGE_NAME):$(VERSION) $(IMAGE_NAME):latest
		docker tag $(IMAGE_NAME):$(VERSION) git.kinesin.ca/kinesin/$(IMAGE_NAME):$(VERSION)
		docker tag $(IMAGE_NAME):$(VERSION) git.kinesin.ca/kinesin/$(IMAGE_NAME):latest
		docker push git.kinesin.ca/kinesin/$(IMAGE_NAME):$(VERSION)
		docker push git.kinesin.ca/kinesin/$(IMAGE_NAME):latest
