-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTaskfile.yaml
More file actions
59 lines (49 loc) · 1.3 KB
/
Copy pathTaskfile.yaml
File metadata and controls
59 lines (49 loc) · 1.3 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
version: "3"
vars:
BINARY: ripples
OUTPUT_DIR: bin
LDFLAGS: "-s -w"
tasks:
default:
desc: List all tasks
cmds:
- task --list-all
silent: true
deps:
desc: Install development tools
cmds:
- task: lint-deps
- go install github.com/rhysd/actionlint/cmd/actionlint@latest
- go install github.com/goreleaser/goreleaser/v2@latest
lint-deps:
desc: Install golangci-lint
cmds:
- go install github.com/golangci/golangci-lint/v2/cmd/golangci-lint@v2.12.2
fmt:
desc: Format Go source files
cmds:
- golangci-lint fmt
lint:
desc: Lint all Go packages and test files
cmds:
- golangci-lint run ./...
- golangci-lint fmt --diff
test:
desc: Run tests with race detection and coverage
cmds:
- GORACE=atexit_sleep_ms=0 go test -count=1 -trimpath -race -covermode=atomic -coverprofile=coverage.txt ./...
build:
desc: Build the ripples binary
cmds:
- mkdir -p {{.OUTPUT_DIR}}
- go build -trimpath -ldflags "{{.LDFLAGS}}" -o {{.OUTPUT_DIR}}/{{.BINARY}} .
ci:
desc: Run all continuous integration checks
cmds:
- task: lint
- task: test
- task: build
release-snapshot:
desc: Build a local snapshot release
cmds:
- goreleaser release --snapshot --clean