42 lines
1.5 KiB
Makefile
42 lines
1.5 KiB
Makefile
# MQTT Management Platform — Release 1 developer commands
|
|
# All commands assume a POSIX shell; on Windows use WSL/Git Bash or run the
|
|
# docker compose commands directly in PowerShell/cmd.
|
|
|
|
COMPOSE ?= docker compose
|
|
B ?= mqtt-backend
|
|
|
|
.PHONY: up down logs ps bootstrap migrate revision backend-shell test fmt lint
|
|
|
|
# --- Lifecycle -------------------------------------------------------------
|
|
up: ## Start the whole stack in the background
|
|
$(COMPOSE) up -d --build
|
|
|
|
down: ## Stop the stack (volumes are preserved)
|
|
$(COMPOSE) down
|
|
|
|
ps: ## Show service status
|
|
$(COMPOSE) ps
|
|
|
|
logs: ## Tail all logs
|
|
$(COMPOSE) logs -f
|
|
|
|
# --- Database --------------------------------------------------------------
|
|
migrate: ## Apply Alembic migrations inside the running backend
|
|
$(COMPOSE) exec $(B) alembic upgrade head
|
|
|
|
revision: ## Create an empty Alembic revision (autogenerate)
|
|
$(COMPOSE) exec $(B) alembic revision --autogenerate -m "$(m)"
|
|
|
|
backend-shell: ## Shell into the backend container
|
|
$(COMPOSE) exec $(B) sh
|
|
|
|
# --- Tests -----------------------------------------------------------------
|
|
test: ## Run backend test suite inside the container
|
|
$(COMPOSE) run --rm $(B) pytest -q
|
|
|
|
# --- Quality ---------------------------------------------------------------
|
|
fmt: ## Format backend sources
|
|
$(COMPOSE) run --rm $(B) ruff format app tests
|
|
|
|
lint: ## Lint backend sources
|
|
$(COMPOSE) run --rm $(B) ruff check app tests
|