58 lines
1.3 KiB
Makefile
58 lines
1.3 KiB
Makefile
# Makefile for pig-farm-controller
|
|
|
|
# 默认目标
|
|
.PHONY: help
|
|
help:
|
|
@echo "Usage: make [target]"
|
|
@echo
|
|
@echo "Targets:"
|
|
@echo " run Run the application"
|
|
@echo " build Build the application"
|
|
@echo " clean Clean generated files"
|
|
@echo " test Run all tests"
|
|
@echo " swag Generate swagger docs"
|
|
@echo " help Show this help message"
|
|
@echo " proto Generate protobuf files"
|
|
@echo " lint Lint the code"
|
|
|
|
# 运行应用
|
|
.PHONY: run
|
|
run:
|
|
go run main.go
|
|
|
|
# 构建应用
|
|
.PHONY: build
|
|
build:
|
|
go build -o bin/pig-farm-controller .
|
|
|
|
# 清理生成文件
|
|
.PHONY: clean
|
|
clean:
|
|
rm -f bin/pig-farm-controller
|
|
|
|
# 运行所有测试
|
|
.PHONY: test
|
|
test:
|
|
go test --count=1 ./...
|
|
|
|
# 生成swagger文档
|
|
.PHONY: swag
|
|
swag:
|
|
if exist docs rmdir /s /q docs
|
|
swag init -g internal/app/api/api.go --parseInternal --parseDependency
|
|
|
|
|
|
# 生成protobuf文件
|
|
.PHONY: proto
|
|
proto:
|
|
protoc --go_out=internal/infra/transport/proto --go_opt=paths=source_relative --go-grpc_out=internal/infra/transport/proto --go-grpc_opt=paths=source_relative -Iinternal/infra/transport/proto internal/infra/transport/proto/device.proto
|
|
|
|
# 运行代码检查
|
|
.PHONY: lint
|
|
lint:
|
|
golangci-lint run ./...
|
|
|
|
# 测试模式(改动文件自动重编译重启)
|
|
.PHONY: dev
|
|
dev:
|
|
air
|