| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- # https://taskfile.dev
- version: "3"
- env:
- GOEXPERIMENT: greenteagc
- tasks:
- lint:
- desc: Run base linters
- cmds:
- - golangci-lint run --path-mode=abs --config=".golangci.yml" --timeout=5m
- lint-fix:
- desc: Run base linters and fix issues
- cmds:
- - golangci-lint run --path-mode=abs --config=".golangci.yml" --timeout=5m --fix
- test:
- desc: Run tests
- cmds:
- - go test ./... {{.CLI_ARGS}}
- fmt:
- desc: Run gofumpt
- cmds:
- - gofumpt -w .
- dev:
- desc: Run with profiling enabled
- env:
- CRUSH_PROFILE: true
- cmds:
- - go run .
- install:
- desc: Install the application
- cmds:
- - go install -v .
- profile:cpu:
- desc: 10s CPU profile
- cmds:
- - go tool pprof -http :6061 'http://localhost:6060/debug/pprof/profile?seconds=10'
- profile:heap:
- desc: Heap profile
- cmds:
- - go tool pprof -http :6061 'http://localhost:6060/debug/pprof/heap'
- profile:allocs:
- desc: Allocations profile
- cmds:
- - go tool pprof -http :6061 'http://localhost:6060/debug/pprof/allocs'
- schema:
- desc: Generate JSON schema for configuration
- cmds:
- - go run main.go schema > schema.json
- - echo "Generated schema.json"
|