6aedc1111b
target calls the new version-at-commit.sh script which will automatically populate the version variable inside the Headscale binary. Once we start tagging releases on the git tree, that will come in handy. The Makefile also has a 'test' target (does nothing yet, no tests yet) and a 'dev' target, which runs linters, tests, and finally builds.
24 lines
421 B
Makefile
24 lines
421 B
Makefile
# Calculate version
|
|
version = $(shell ./scripts/version-at-commit.sh)
|
|
|
|
build:
|
|
go build -ldflags "-s -w -X main.version=$(version)" cmd/headscale/headscale.go
|
|
|
|
dev: lint test build
|
|
|
|
test:
|
|
go test -coverprofile=coverage.out
|
|
|
|
coverprofile_func:
|
|
go tool cover -func=coverage.out
|
|
|
|
coverprofile_html:
|
|
go tool cover -html=coverage.out
|
|
|
|
lint:
|
|
golint
|
|
golangci-lint run
|
|
|
|
compress: build
|
|
upx --brute cmd/headscale/headscale
|
|
|