minitor-go/Makefile
Ian Fijolek b1422bbec2
All checks were successful
continuous-integration/drone/push Build is passing
Add split out metrics to a new make target
In case trying to run without having an available port to
serve http on
2019-11-15 17:36:10 -08:00

44 lines
893 B
Makefile

.PHONY: all
DOCKER_TAG ?= minitor-go-${USER}
.PHONY: default
default: test
.PHONY: build
build:
go build
minitor-go:
go build
.PHONY: run
run: minitor-go build
./minitor-go -debug
.PHONY: run-metrics
run-metrics: minitor-go build
./minitor-go -debug -metrics
.PHONY: test
test:
go test -coverprofile=coverage.out
@echo
go tool cover -func=coverage.out
@echo
@# Check min coverage percentage
@go tool cover -func=coverage.out | awk -v target=80.0% \
'/^total:/ { print "Total coverage: " $$3 " Minimum coverage: " target; if ($$3+0.0 >= target+0.0) print "ok"; else { print "fail"; exit 1; } }'
.PHONY: clean
clean:
rm -f ./minitor-go
rm -f ./coverage.out
.PHONY: docker-build
docker-build:
docker build -f ./Dockerfile.multi-stage -t $(DOCKER_TAG) .
.PHONY: docker-run
docker-run: docker-build
docker run --rm -v $(shell pwd)/config.yml:/root/config.yml $(DOCKER_TAG)