-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
82 lines (61 loc) · 1.87 KB
/
Copy pathMakefile
File metadata and controls
82 lines (61 loc) · 1.87 KB
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
.PHONY: test build vet clean help lint fmt race fuzz
## help: Show all available targets
help:
@grep -E '^## ' $(MAKEFILE_LIST) | sed 's/## //' | column -t -s ':'
## test: Run all tests with race detector
test:
go test ./... -race -count=1
## build: Build all packages
build:
go build ./...
## vet: Run go vet
vet:
go vet ./...
## lint: Run static analysis
lint:
go vet ./...
@echo "Lint complete"
## fmt: Format all Go files
fmt:
gofmt -w -s .
## race: Run tests with race detector (verbose)
race:
go test ./... -race -count=1 -v
## fuzz: Run fuzz tests for 30 seconds
fuzz:
go test ./pkg/parser/ -fuzz=FuzzParser_Parse -fuzztime=30s
go test ./pkg/parser/ -fuzz=FuzzParser_ExtractJSON -fuzztime=30s
go test ./pkg/parser/ -fuzz=FuzzParser_ExtractActions -fuzztime=30s
## clean: Clean build cache
clean:
go clean -cache -testcache
## cover: Run tests with coverage report
cover:
go test ./... -race -count=1 -coverprofile=coverage.out
go tool cover -html=coverage.out -o coverage.html
@echo "Coverage report: coverage.html"
## bench: Run benchmarks
bench:
go test ./... -bench=. -benchmem
## check: Run all quality checks (vet + test)
check: vet test
## upstream-push: Push to all 4 remotes
upstream-push:
./Upstreams/push-all.sh
## upstream-sync: Sync from all remotes
upstream-sync:
./Upstreams/sync-all.sh
# Definition of Done gates — portable drop-in from HelixAgent
.PHONY: no-silent-skips no-silent-skips-warn demo-all demo-all-warn demo-one ci-validate-all
no-silent-skips:
@bash scripts/no-silent-skips.sh
no-silent-skips-warn:
@NO_SILENT_SKIPS_WARN_ONLY=1 bash scripts/no-silent-skips.sh
demo-all:
@bash scripts/demo-all.sh
demo-all-warn:
@DEMO_ALL_WARN_ONLY=1 DEMO_ALLOW_TODO=1 bash scripts/demo-all.sh
demo-one:
@DEMO_MODULES="$(MOD)" bash scripts/demo-all.sh
ci-validate-all: no-silent-skips-warn demo-all-warn
@echo "ci-validate-all: all gates executed"