axe/Makefile
2026-10-18 22:07:25 +03:00

47 lines
2.0 KiB
Makefile
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Команды разработки — одинаковые на любой машине.
# На Windows без make те же пункты продублированы в README как голые go-команды.
# Проверить, что цели синхронны с README, можно глазами: список ниже — канон.
.PHONY: run build test race vet lint fmt swag migrate seed up down tidy
run: ## запустить сервер (собирает и поднимает cmd/api)
go run ./cmd/api
build: ## собрать все пакеты
go build ./...
test: ## тесты; без DATABASE_URL интеграционные скипаются — не обманывайтесь
go test ./...
# race требует CGO и C-компилятор: в CI (ubuntu) они есть, на Windows
# без MinGW команда упадёт с «-race requires cgo» — там гонки ищет CI.
race: ## тесты с детектором гонок (то же, что делает CI)
go test -race ./...
vet: ## быстрая статическая проверка
go vet ./...
lint: ## полный линтер (конфиг — .golangci.yml)
golangci-lint run ./...
fmt: ## отформатировать код
gofmt -w .
swag: ## перегенерировать Swagger из аннотаций (docs/)
swag init -g cmd/api/main.go -o docs --parseInternal
migrate: ## накатить миграции без запуска API (нужно и CI, и перед тестами)
go run ./cmd/migrate
seed: ## демо-данные для ручной проверки (ТОЛЬКО локальная/демо-база)
go run ./cmd/seed --yes
up: ## поднять локальную БД в docker (порт 5433, см. compose.yaml)
docker compose up -d --wait
down: ## остановить локальную БД; данные остаются в томе pgdata
docker compose down
tidy: ## привести go.mod/go.sum в порядок
go mod tidy