-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathMakefile
57 lines (42 loc) · 1.6 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
GIT_VERSION ?= v0.1.0
all: deps gen build build_ui
rebuild: gen build
build:
@GO111MODULE=on go build -ldflags "-X github.com/Alayacare/goliac/internal/config.GoliacBuildVersion=${GIT_VERSION}" -o goliac ./cmd/goliac
build_ui:
@echo "Building Goliac UI ..."
@cd ./browser/goliac-ui/; npm install --legacy-peer-deps && npm run build
run_ui:
@cd ./browser/goliac-ui/; npm run serve
test: deps verifiers
@GO111MODULE=on go test -covermode=atomic -coverprofile=coverage.txt ./internal/...
@go tool cover -html coverage.txt -o cover.html
gen: api_docs swagger
deps:
@go install github.com/go-swagger/go-swagger/cmd/[email protected]
@go install github.com/golangci/golangci-lint/cmd/[email protected]
doc:
npm run docs:build
rm -rf ghpages
rsync -av docs/.vitepress/dist/ ghpages
################################
### Private
################################
api_docs:
@echo "Installing swagger-merger" && npm install swagger-merger -g
@swagger-merger -i $(PWD)/swagger/index.yaml -o $(PWD)/docs/api_docs/bundle.yaml
verifiers: verify_lint verify_swagger
verify_lint:
@echo "Running $@"
@golangci-lint run -D errcheck ./internal/...
verify_swagger:
@echo "Running $@"
@swagger validate $(PWD)/docs/api_docs/bundle.yaml
swagger: verify_swagger
@echo "Regenerate swagger files"
@rm -f /tmp/configure_goliac.go
@cp ./swagger_gen/restapi/configure_goliac.go /tmp/configure_goliac.go 2>/dev/null || :
@rm -rf ./swagger_gen
@mkdir ./swagger_gen
@swagger generate server -t ./swagger_gen -f ./docs/api_docs/bundle.yaml
@cp /tmp/configure_goliac.go ./swagger_gen/restapi/configure_goliac.go 2>/dev/null || :