build: add makefile
This commit is contained in:
		
							parent
							
								
									d41cd794a2
								
							
						
					
					
						commit
						00a67f82dd
					
				|  | @ -0,0 +1,42 @@ | |||
| ORG     := $(shell basename $(realpath ..)) | ||||
| PKGS    := $(shell go list ./... | grep -v /vendor/) | ||||
| 
 | ||||
| build: | ||||
| 	go build ${TARGETS} | ||||
| .PHONY: build | ||||
| 
 | ||||
| generate: | ||||
| 	go generate ${PKGS} | ||||
| .PHONY: generate | ||||
| 
 | ||||
| fmt: | ||||
| 	go fmt ${PKGS} | ||||
| .PHONY: fmt | ||||
| 
 | ||||
| check: | ||||
| 	go vet ${PKGS} | ||||
| .PHONY: check | ||||
| 
 | ||||
| test: | ||||
| 	go test -v ${PKGS} -cover -race -p=1 | ||||
| .PHONY: test | ||||
| 
 | ||||
| cross: | ||||
| 	gox -os '!freebsd !netbsd' -arch '!arm' -output "dist/{{.Dir}}_{{.OS}}_{{.Arch}}" ${TARGETS} | ||||
| .PHONY: cross | ||||
| 
 | ||||
| pristine: generate fmt | ||||
| 	git ls-files --modified --deleted --others | diff /dev/null - | ||||
| .PHONY: pristine | ||||
| 
 | ||||
| release: pristine cross | ||||
| 	@ghr -b ${BODY} -t ${GITHUB_TOKEN} -u ${ORG} -replace ${TAG} dist | ||||
| .PHONY: release | ||||
| 
 | ||||
| tools: | ||||
| 	go get -u github.com/roboll/ghr github.com/mitchellh/gox | ||||
| .PHONY: tools | ||||
| 
 | ||||
| TAG  = $(shell git describe --tags --abbrev=0 HEAD) | ||||
| LAST = $(shell git describe --tags --abbrev=0 HEAD^) | ||||
| BODY = "`git log ${LAST}..HEAD --oneline --decorate` `printf '\n\#\#\# [Build Info](${BUILD_URL})'`" | ||||
		Loading…
	
		Reference in New Issue