version: '2' vars: GIT_COMMIT: sh: git log -n 1 --format=%h GO_PACKAGES: . ./cmd/task ./internal/args ./internal/compiler ./internal/compiler/v1 ./internal/compiler/v2 ./internal/execext ./internal/logger ./internal/status ./internal/taskfile ./internal/taskfile/version ./internal/templater tasks: # compiles current source code and make "task" executable available on # $GOPATH/bin/task{.exe} install: desc: Installs Task cmds: - go install -v -ldflags="-w -s -X main.version={{.GIT_COMMIT}}" ./cmd/task dl-deps: desc: Downloads cli dependencies cmds: - task: go-get vars: {REPO: github.com/golang/lint/golint} - task: go-get vars: {REPO: github.com/asticode/go-astitodo/astitodo} - task: go-get vars: {REPO: github.com/golang/dep/cmd/dep} - task: go-get vars: {REPO: github.com/goreleaser/goreleaser} - task: go-get vars: {REPO: github.com/goreleaser/godownloader} update-deps: desc: Updates dependencies cmds: - dep ensure - dep ensure -update clean: desc: Cleans temp files and folders cmds: - rm -rf dist/ lint: desc: Runs golint cmds: - golint {{.GO_PACKAGES}} silent: true test: desc: Runs test suite deps: [install] cmds: - go test {{.GO_PACKAGES}} test-release: desc: Tests release process without publishing cmds: - goreleaser --snapshot --rm-dist generate-install-script: desc: Generate install script using https://githbub.com/goreleaser/godownloader cmds: - godownloader --repo go-task/task -o install-task.sh todo: desc: Prints TODO comments present in the code cmds: - astitodo {{.GO_PACKAGES}} silent: true ci: cmds: - task: go-get vars: {REPO: github.com/golang/lint/golint} - task: lint - task: test go-get: cmds: - go get -u {{.REPO}}