1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- SHELL=cmd
- .PHONY: all clean check lint cover build_api_win build_rpc_win help
- all:clean check cover
- modInit: go mod init userCenter
- modTidy: go mod tidy
- genRpc:
- cd rpc && goctl rpc protoc userCenter.proto --go_out=. --go-grpc_out=. --zrpc_out=.
- @echo "===========> genRpc finish"
- genApi:
- cd api/ && goctl api go -api userCenter.api -dir .
- @echo "===========> genApi finish"
- #格式化动作
- check:
- #格式化代码
- go fmt ./
- @echo "===========> fmt finish"
- #一般错误检查
- go vet ./
- @echo "===========> vet finish"
- #会把指定代码包的所有Go语言源码文件中的旧版本代码修正为新版本的代码。这里所说的版本即Go语言的版本
- go fix ./
- @echo "===========> fix finish"
- #跑静态分析
- lint:
- golangcli-lint run --enable-all
- #定义变量
- API_LINUX_FILE=./api/usercenter_linux
- API_WIN_FILE=./api/usercenter.exe
- RPC_LINUX_FILE=./rpc/usercenter_linux
- RPC_WIN_FILE=./rpc/usercenter.exe
- #编译api--linux
- build_api_linux:
- SET GOARCH=amd64
- SET GOOS=linux
- go build -ldflags="-s -w" -o ${API_LINUX_FILE} ./api/usercenter.go
- #编辑api--win
- build_api_win:
- @echo "===========> windows go build api "
- go build -ldflags="-s -w" -o ${API_WIN_FILE} ./api/usercenter.go
- #编译rpc--linux
- build_rpc_linux:
- SET GOOS=linux
- SET GOARCH=amd64
- go build -ldflags="-s -w" -o ${RPC_LINUX_FILE} ./rpc/usercenter.go
- #编辑rpc--win
- build_rpc_win:
- @echo "===========> windows go build rpc "
- go build -ldflags="-s -w" -o ${RPC_WIN_FILE} ./rpc/usercenter.go
- #单元测试覆盖率
- cover:
- @echo "===========> Run go test "
- cd service/ && go test -v -covermode=count -coverprofile=test_cover.out && go tool cover -html=test_cover.out -o coverage.html
- #清理
- clean:
- go clean
- cd rpc && del *.exe
- cd api && del *.exe
- cd service && del *.html
- cd service && del *.out
- #显示帮助
- help:
- @echo "make all 执行"
- @echo "make modInit 初始化go.mod文件"
- @echo "make modTidy 更新go.mod"
- @echo "make genRpc 初始rpc"
- @echo "make genApi 初始化api"
- @echo "make check fmt、vet、fix代码静态检查"
- @echo "make lint lint代码静态走查"
- @echo "make build_api_mac 编译api->Mac可执行文件"
- @echo "make build_api_linux 编译api->Linux可执行文件"
- @echo "make build_api_win 编译api->windows可执行文件"
- @echo "make build_rpc_mac 编译rpc->Mac可执行文件"
- @echo "make build_rpc_linux 编译rpc->Linux可执行文件"
- @echo "make build_rpc_win 编译rpc->windows可执行文件"
- @echo "make cover 单元测试用例覆盖率"
- @echo "make clean 清理"
|