A prescriptive Golang Task runner.
- Code linting by golangci-lint
- Ginkgo and Gomega test framework
- Source formatting with gofumpt and golines
- Coverage report generated with go-junit-report
Install Task:
$ brew install go-task
Install Taskfile into project:
$ curl -o Taskfile.yml https://raw.githubusercontent.com/retr0h/task-go/main/Taskfile.yml
$ task
Install dependencies
$ task deps
Module maintenance:
$ task mod
Report likely mistakes in packages:
$ task vet
Run Go's vulnerability scanner:
$ task vuln
Compile and run Go program:
$ task run
Test packages:
$ task unit
Test all:
$ task test
Generate coverage:
$ task cov
Reformat files whose formatting differs from go_fmt_command
:
$ task fmt
Check files whose formatting differs from go_fmt_command
:
$ task fmt:check
Generate markdown documentation for golang code:
$ task doc:generate
List targets:
$ task
The MIT License.