27 lines
906 B
Makefile
27 lines
906 B
Makefile
|
|
# go-zero 生成風格
|
|||
|
|
GO_ZERO_STYLE=go_zero
|
|||
|
|
GO ?= go
|
|||
|
|
GOFMT ?= gofmt "-s"
|
|||
|
|
GOFILES := $(shell find . -name "*.go")
|
|||
|
|
LDFLAGS := -s -w
|
|||
|
|
VERSION="v0.0.1"
|
|||
|
|
DOCKER_REP="reg.wang/app-cloudep-member-service"
|
|||
|
|
GIT_COMMIT ?= $(shell git rev-parse --short HEAD)
|
|||
|
|
|
|||
|
|
|
|||
|
|
GO_DOC_DIR := generate/doc-generate
|
|||
|
|
GO_DOC_BIN := $(GO_DOC_DIR)/bin/go-doc
|
|||
|
|
API_ENTRY := ./generate/api/gateway.api
|
|||
|
|
DOC_OUT := ./docs/openapi
|
|||
|
|
|
|||
|
|
.PHONY: gen-api build-go-doc gen-doc
|
|||
|
|
gen-api: # 使用專案 handler 模板(response.Write)
|
|||
|
|
goctl api go -api $(API_ENTRY) -dir . -style go_zero -home generate/goctl
|
|||
|
|
|
|||
|
|
build-go-doc: ## 編譯 go-doc(OpenAPI 文件生成器)
|
|||
|
|
cd $(GO_DOC_DIR) && GOTOOLCHAIN=go1.26.1 go build -o bin/go-doc ./cmd/go-doc
|
|||
|
|
|
|||
|
|
gen-doc: build-go-doc ## 從 .api 生成 OpenAPI 3.0 YAML
|
|||
|
|
@mkdir -p $(DOC_OUT)
|
|||
|
|
$(GO_DOC_BIN) -a $(API_ENTRY) -d $(DOC_OUT) -f gateway -s openapi3.0 -y
|
|||
|
|
@echo "Generated: $(DOC_OUT)/gateway.yaml"
|