diff --git a/.travis.yml b/.travis.yml index d5aa7f4..3c03132 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,4 +2,11 @@ language: go script: - - go test -v ./... \ No newline at end of file + - go test -v ./... + +go: + - 1.14 + +os: + - linux + \ No newline at end of file diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..cadd6cf --- /dev/null +++ b/Makefile @@ -0,0 +1,33 @@ +PROJECT_NAME := "ithub.com/jeremy-boo/go-util-tour" +PKG := "$(PROJECT_NAME)" +PKG_LIST := $(shell go list ${PKG}/... | grep -v /vendor/) +GO_FILES := $(shell find . -name '*.go' | grep -v /vendor/ | grep -v _test.go) + +.PHONY: all dep lint vet test test-coverage build clean + +all: build + +dep: ## Get the dependencies + @go mod download + +lint: ## Lint Golang files + @golint -set_exit_status ${PKG_LIST} + +vet: ## Run go vet + @go vet ${PKG_LIST} + +test: ## Run unittests + @go test -short ${PKG_LIST} + +test-coverage: ## Run tests with coverage + @go test -short -coverprofile cover.out -covermode=atomic ${PKG_LIST} + @cat cover.out >> coverage.txt + +build: dep ## Build the binary file + @go build -i -o build/main $(PKG) + +clean: ## Remove previous build + @rm -f ./build + +help: ## Display this help screen + @grep -h -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' \ No newline at end of file