-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathJustfile
More file actions
107 lines (82 loc) · 1.91 KB
/
Copy pathJustfile
File metadata and controls
107 lines (82 loc) · 1.91 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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# ©AngelaMos | 2026
# Justfile
set export
set shell := ["bash", "-uc"]
project := file_name(justfile_directory())
version := `git describe --tags --always 2>/dev/null || echo "dev"`
default:
@just --list --unsorted
[group('lint')]
lint *ARGS:
golangci-lint run --timeout=5m {{ARGS}}
[group('lint')]
lint-fix:
golangci-lint run --timeout=5m --fix
[group('lint')]
format:
golangci-lint fmt
[group('lint')]
tidy:
go mod tidy
[group('lint')]
vet:
go vet ./...
[group('test')]
test *ARGS:
go test -race ./... {{ARGS}}
[group('test')]
test-v *ARGS:
go test -race -v ./... {{ARGS}}
[group('test')]
cover:
go test -race -cover ./...
[group('test')]
cover-html:
go test -race -coverprofile=coverage.out ./...
go tool cover -html=coverage.out -o coverage.html
@echo "Coverage report: coverage.html"
[group('ci')]
ci: lint test
@echo "All checks passed."
[group('ci')]
check: lint vet
[group('dev')]
run *ARGS:
go run ./cmd/bomber {{ARGS}}
[group('dev')]
dev-scan:
go run ./cmd/bomber scan .
[group('dev')]
dev-generate:
go run ./cmd/bomber generate . --format cyclonedx
[group('dev')]
dev-vuln:
go run ./cmd/bomber vuln .
[group('dev')]
dev-check:
go run ./cmd/bomber check . --policy policy.yaml
[group('prod')]
build:
go build -ldflags="-s -w" -o bin/bomber ./cmd/bomber
@echo "Built: bin/bomber ($(du -h bin/bomber | cut -f1))"
[group('prod')]
build-debug:
go build -o bin/bomber ./cmd/bomber
[group('prod')]
install:
go install ./cmd/bomber
[group('util')]
info:
@echo "Project: {{project}}"
@echo "Version: {{version}}"
@echo "Go: $(go version | cut -d' ' -f3)"
@echo "OS: {{os()}} ({{arch()}})"
@echo "Module: $(head -1 go.mod | cut -d' ' -f2)"
[group('util')]
update:
go get -u ./...
go mod tidy
[group('util')]
clean:
-rm -rf bin/ coverage.out coverage.html
@echo "Cleaned build artifacts."