73 lines
1.2 KiB
YAML
73 lines
1.2 KiB
YAML
|
|
version: '3'
|
||
|
|
|
||
|
|
tasks:
|
||
|
|
default:
|
||
|
|
cmds:
|
||
|
|
- task: fmt
|
||
|
|
- task: test
|
||
|
|
- task: lint
|
||
|
|
|
||
|
|
fmt:
|
||
|
|
desc: Format go code
|
||
|
|
sources:
|
||
|
|
- '**/*.go'
|
||
|
|
cmds:
|
||
|
|
- go fmt ./...
|
||
|
|
- go mod tidy
|
||
|
|
|
||
|
|
gen:
|
||
|
|
desc: Generate files
|
||
|
|
sources:
|
||
|
|
- '**/*.go'
|
||
|
|
cmds:
|
||
|
|
- go generate ./...
|
||
|
|
|
||
|
|
lint:
|
||
|
|
desc: Do static analysis
|
||
|
|
sources:
|
||
|
|
- '**/*.go'
|
||
|
|
cmds:
|
||
|
|
- golangci-lint run
|
||
|
|
|
||
|
|
test:
|
||
|
|
desc: Run unit tests
|
||
|
|
deps: [fmt]
|
||
|
|
sources:
|
||
|
|
- '**/*.go'
|
||
|
|
generates:
|
||
|
|
- build/cover.out
|
||
|
|
cmds:
|
||
|
|
- go test -race -cover -coverprofile build/cover.out ./...
|
||
|
|
|
||
|
|
coverage-report:
|
||
|
|
desc: Build coverage report
|
||
|
|
deps: [test]
|
||
|
|
sources:
|
||
|
|
- build/cover.out
|
||
|
|
generates:
|
||
|
|
- build/cover.html
|
||
|
|
cmds:
|
||
|
|
- go tool cover -html=build/cover.out -o build/cover.html
|
||
|
|
|
||
|
|
serve-report:
|
||
|
|
desc: Serve the coverage report
|
||
|
|
deps: [coverage-report]
|
||
|
|
cmds:
|
||
|
|
- ip addr list | grep inet
|
||
|
|
- php -S 0.0.0.0:3434 -t build
|
||
|
|
|
||
|
|
serve-docs:
|
||
|
|
desc: Serve the current docs
|
||
|
|
cmds:
|
||
|
|
- godoc -http=0.0.0.0:3434 -play
|
||
|
|
|
||
|
|
build:
|
||
|
|
desc: Build binaries
|
||
|
|
deps: [test]
|
||
|
|
sources:
|
||
|
|
- '**/*.go'
|
||
|
|
generates:
|
||
|
|
- ./build/trakter
|
||
|
|
cmds:
|
||
|
|
- go build -o ./build/ ./cmd/trakter/
|