-
-
Notifications
You must be signed in to change notification settings - Fork 12
/
Makefile
80 lines (62 loc) · 2.85 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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
PKG = github.com/k1LoW/ndiag
COMMIT = $$(git describe --tags --always)
OSNAME=${shell uname -s}
ifeq ($(OSNAME),Darwin)
DATE = $$(gdate --utc '+%Y-%m-%d_%H:%M:%S')
else
DATE = $$(date --utc '+%Y-%m-%d_%H:%M:%S')
endif
export GO111MODULE=on
BUILD_LDFLAGS = -X $(PKG).commit=$(COMMIT) -X $(PKG).date=$(DATE)
default: test
ci: depsdev test
test:
go test ./... -coverprofile=coverage.out -covermode=count
lint:
golangci-lint run ./...
build:
go build -ldflags="$(BUILD_LDFLAGS)"
ndiag_draw: build
./ndiag draw -c example/3-tier/input/ndiag.yml -n example/3-tier/input/nodes.yml -t png -l consul -l vip_group > example.png
./ndiag draw -c example/3-tier/input/ndiag.yml -n example/3-tier/input/nodes.yml -t svg -l consul -l vip_group > example.svg
./ndiag draw -c example/3-tier/input/ndiag.yml -n example/3-tier/input/nodes.yml -t dot -l consul -l vip_group > example.dot
./ndiag draw -c ndiag_ndiag.yml -t dot -l type -l file > ndiag.dot
ndiag_doc: ndiag_doc_local ndiag_doc_tutorial ndiag_doc_fetch_icons
ndiag_doc_local: build
./ndiag doc -c ndiag_ndiag.yml --rm-dist
./ndiag doc -c ndiag_ndiag.ja.yml --rm-dist
./ndiag doc -c example/3-tier/input/ndiag.yml -n example/3-tier/input/nodes.yml --rm-dist
ndiag_doc_tutorial: build
./ndiag doc -c example/tutorial/step1/ndiag.yml --rm-dist
./ndiag doc -c example/tutorial/step2/ndiag.yml --rm-dist
./ndiag doc -c example/tutorial/step3/ndiag.yml --rm-dist
./ndiag doc -c example/tutorial/step4/ndiag.yml --rm-dist
./ndiag doc -c example/tutorial/step5/ndiag.yml --rm-dist
./ndiag doc -c example/tutorial/step6/ndiag.yml --rm-dist
./ndiag doc -c example/tutorial/step7/ndiag.yml --rm-dist
./ndiag doc -c example/tutorial/final/ndiag.yml -n example/tutorial/final/nodes.yml --rm-dist
ndiag_doc_fetch_icons: build
./ndiag fetch-icons k8s -c example/k8s/input/ndiag.yml && touch example/k8s/input/ndiag.icons/.gitkeep && echo "*.*" > example/k8s/input/ndiag.icons/.gitignore
./ndiag doc -c example/k8s/input/ndiag.yml --rm-dist
./ndiag fetch-icons gcp -c example/gcp/input/ndiag.yml && touch example/gcp/input/ndiag.icons/.gitkeep && echo "*.*" > example/gcp/input/ndiag.icons/.gitignore
./ndiag doc -c example/gcp/input/ndiag.yml --rm-dist
./ndiag fetch-icons aws -c example/aws/input/ndiag.yml && touch example/aws/input/ndiag.icons/.gitkeep && echo "*.*" > example/aws/input/ndiag.icons/.gitignore
./ndiag doc -c example/aws/input/ndiag.yml --rm-dist
ci_doc: depsdev ndiag_doc
depsdev:
go install github.com/Songmu/ghch/cmd/ghch@latest
go install github.com/Songmu/gocredits/cmd/gocredits@latest
prerelease:
git pull origin main --tag
go mod tidy
ghch -w -N ${VER}
gocredits . > CREDITS
git add CHANGELOG.md CREDITS go.mod go.sum
git commit -m'Bump up version number'
git tag ${VER}
prerelease_for_tagpr:
gocredits -w .
git add CHANGELOG.md CREDITS go.mod go.sum
release:
goreleaser --rm-dist
.PHONY: default test