2026-04-19 08:59:00 +08:00
|
|
|
|
.PHONY: help build build-cli build-cli-all run test clean vet tidy check run-check db-dir
|
feat: backend core - auth, user, role, permission, device, webhook, monitoring, cache, repository, service, middleware, API handlers
2026-04-02 11:19:50 +08:00
|
|
|
|
|
|
|
|
|
|
help: ## 显示帮助信息
|
|
|
|
|
|
@echo "======================================"
|
|
|
|
|
|
@echo "用户管理系统 - Makefile"
|
|
|
|
|
|
@echo "======================================"
|
|
|
|
|
|
@echo "可用命令:"
|
|
|
|
|
|
@echo " make check - 全面检查(依赖+vet+编译+测试)"
|
|
|
|
|
|
@echo " make build - 构建应用"
|
2026-04-19 08:59:00 +08:00
|
|
|
|
@echo " make build-cli - 构建 UMS CLI"
|
|
|
|
|
|
@echo " make build-cli-all - 交叉编译所有平台"
|
feat: backend core - auth, user, role, permission, device, webhook, monitoring, cache, repository, service, middleware, API handlers
2026-04-02 11:19:50 +08:00
|
|
|
|
@echo " make run - 运行应用"
|
|
|
|
|
|
@echo " make test - 运行测试"
|
|
|
|
|
|
@echo " make vet - 代码静态检查"
|
|
|
|
|
|
@echo " make tidy - 整理依赖"
|
|
|
|
|
|
@echo " make db-dir - 创建数据库目录"
|
|
|
|
|
|
@echo " make clean - 清理构建文件"
|
|
|
|
|
|
@echo ""
|
|
|
|
|
|
|
2026-04-19 08:59:00 +08:00
|
|
|
|
# CLI 构建配置
|
|
|
|
|
|
CLI_NAME = ums
|
|
|
|
|
|
VERSION = 1.0.0
|
|
|
|
|
|
COMMIT = $(shell git rev-parse --short HEAD 2>/dev/null || echo "dev")
|
|
|
|
|
|
BUILD_DATE = $(shell date -u '+%Y-%m-%d_%H:%M:%S')
|
|
|
|
|
|
LDFLAGS = -ldflags "-X github.com/user-management-system/cmd/ums/cmd.Version=$(VERSION) -X github.com/user-management-system/cmd/ums/cmd.Commit=$(COMMIT) -X github.com/user-management-system/cmd/ums/cmd.BuildDate=$(BUILD_DATE)"
|
|
|
|
|
|
|
|
|
|
|
|
# 平台列表
|
|
|
|
|
|
PLATFORMS = darwin/amd64 darwin/arm64 linux/amd64 linux/arm64 windows/amd64
|
|
|
|
|
|
|
|
|
|
|
|
check: tidy vet build build-cli test ## 全面检查:依赖+静态检查+编译+测试
|
feat: backend core - auth, user, role, permission, device, webhook, monitoring, cache, repository, service, middleware, API handlers
2026-04-02 11:19:50 +08:00
|
|
|
|
|
|
|
|
|
|
tidy: ## 整理Go模块依赖
|
|
|
|
|
|
@echo "整理依赖..."
|
|
|
|
|
|
go mod tidy
|
|
|
|
|
|
go mod download
|
|
|
|
|
|
|
|
|
|
|
|
vet: ## 运行静态代码检查
|
|
|
|
|
|
@echo "运行静态检查..."
|
|
|
|
|
|
go vet ./...
|
|
|
|
|
|
|
|
|
|
|
|
build: db-dir ## 构建应用
|
|
|
|
|
|
@echo "构建应用..."
|
|
|
|
|
|
go build -o bin/server cmd/server/main.go
|
|
|
|
|
|
|
2026-04-19 08:59:00 +08:00
|
|
|
|
build-cli: ## 构建 UMS CLI(当前平台)
|
|
|
|
|
|
@echo "构建 UMS CLI..."
|
|
|
|
|
|
CGO_ENABLED=0 go build $(LDFLAGS) -o bin/$(CLI_NAME) cmd/ums/main.go
|
|
|
|
|
|
|
|
|
|
|
|
build-cli-all: $(PLATFORMS) ## 构建所有平台的 CLI
|
|
|
|
|
|
@echo "所有平台构建完成"
|
|
|
|
|
|
|
|
|
|
|
|
build-cli-%:
|
|
|
|
|
|
@platform=$(patsubst %/%,%,$@); \
|
|
|
|
|
|
os=$(platform%%/*); \
|
|
|
|
|
|
arch=$(platform##*/); \
|
|
|
|
|
|
echo "Building for $$os/$$arch"; \
|
|
|
|
|
|
CGO_ENABLED=0 GOOS=$$os GOARCH=$$arch go build $(LDFLAGS) -o bin/$(CLI_NAME)-$$os-$$arch cmd/ums/main.go
|
|
|
|
|
|
|
feat: backend core - auth, user, role, permission, device, webhook, monitoring, cache, repository, service, middleware, API handlers
2026-04-02 11:19:50 +08:00
|
|
|
|
run: db-dir ## 运行应用
|
|
|
|
|
|
@echo "运行应用..."
|
|
|
|
|
|
go run cmd/server/main.go
|
|
|
|
|
|
|
|
|
|
|
|
test: ## 运行测试
|
|
|
|
|
|
@echo "运行测试..."
|
|
|
|
|
|
go test -short -race ./...
|
|
|
|
|
|
|
|
|
|
|
|
db-dir: ## 创建数据库目录
|
|
|
|
|
|
@if [ ! -d "data" ]; then mkdir data; fi
|
|
|
|
|
|
|
|
|
|
|
|
clean: ## 清理构建文件
|
|
|
|
|
|
@echo "清理构建文件..."
|
|
|
|
|
|
rm -rf bin/
|
|
|
|
|
|
rm -f server.exe
|