-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Go Service.mk
94 lines (70 loc) · 1.85 KB
/
Go Service.mk
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# sourced by https://github.com/octomation/makefiles
.DEFAULT_GOAL = check
GIT_HOOKS = post-merge pre-commit pre-push
GO_VERSIONS = 1.20 1.21
include src/common/env.mk
include src/common/helpers.mk
include src/git/env.mk
include src/git/hooks.mk
include src/git/helpers.mk
include src/go/env.mk
include src/go/deps.mk
include src/go/dev.mk
include src/go/test.unit.mk
include src/go/test.integration.mk
include src/go/test.fuzzing.mk
include src/go/test.performance.mk
include src/go/build.service.mk
include src/go/dist.mk
include src/go/tools.mk
include src/docker/go.mk
export PATH := $(GOBIN):$(PATH)
setup: git-config git-hooks go-deps-fetch go-tools-install
.PHONY: setup
clean: go-deps-clean go-dist-clean go-install-clean go-test-clean go-fuzzing-test-clean
.PHONY: clean
drop: clean git-clean git-rmdir
.PHONY: drop
env: go-env go-build-env go-tools-env
env:
@echo "PATH: $(PATH)"
.PHONY: env
deps: go-deps-fetch
.PHONY: deps
tools: go-tools-install
.PHONY: tools
update:
@true # TODO:implement go-deps-update go-tools-update generate
.PHONY: update
format: go-fmt
.PHONY: format
generate: go-generate go-fmt
.PHONY: generate
docs:
@true # TODO:implement go-docs go-pkg
.PHONY: docs
lint: go-lint
.PHONY: lint
test: go-test
.PHONY: test
test-with-coverage: TIMEOUT=5s
test-with-coverage: go-integration-test-with-coverage
.PHONY: test-with-coverage
check: lint test
.PHONY: check
fast-check: find-todos
fast-check: go-check go-deps-check go-tools-check
fast-check: go-deps-tidy go-tools-tidy go-generate go-fmt git-check
.PHONY: fast-check
full-check: fast-check go-dist-check check
.PHONY: full-check
full-test: go-test go-fuzzing-test go-integration-test go-performance-test
.PHONY: full-test
client: go-client
.PHONY: client
server: go-server
.PHONY: server
install: go-install
.PHONY: install
verbose: make-verbose go-verbose
.PHONY: verbose