mirror of
https://github.com/woodpecker-ci/woodpecker.git
synced 2024-12-06 00:26:30 +00:00
40 lines
850 B
Makefile
40 lines
850 B
Makefile
|
GOOS := $(if $(GOOS),$(GOOS),linux)
|
||
|
GOARCH := $(if $(GOARCH),$(GOARCH),amd64)
|
||
|
GO=CGO_ENABLED=0 GOOS=$(GOOS) GOARCH=$(GOARCH) GO111MODULE=on go
|
||
|
GOVERSION = $(shell $(GO) version | cut -c 14- | cut -d' ' -f1)
|
||
|
|
||
|
GIT_COMMIT = $(shell git rev-parse --short HEAD)
|
||
|
|
||
|
BUILDFLAGS ?=
|
||
|
|
||
|
ifeq ($(shell expr ${GOVERSION} \>= 1.14), 1)
|
||
|
BUILDFLAGS += -mod=mod
|
||
|
endif
|
||
|
|
||
|
PACKAGE_LIST := go list ./...
|
||
|
PACKAGES := $$($(PACKAGE_LIST))
|
||
|
FILES_TO_FMT := $(shell find . -path -prune -o -name '*.go' -print)
|
||
|
|
||
|
all: format build test
|
||
|
|
||
|
format: vet fmt
|
||
|
|
||
|
fmt:
|
||
|
@echo "gofmt"
|
||
|
@gofmt -w ${FILES_TO_FMT}
|
||
|
@git diff --exit-code .
|
||
|
|
||
|
build: mod
|
||
|
$(GO) build ${BUILDFLAGS} -o ./bin/promlinter cmd/promlinter/main.go
|
||
|
|
||
|
vet:
|
||
|
$(GO) vet ${BUILDFLAGS} ./...
|
||
|
|
||
|
mod:
|
||
|
@echo "go mod tidy"
|
||
|
$(GO) mod tidy
|
||
|
@git diff --exit-code -- go.mod
|
||
|
|
||
|
test:
|
||
|
$(GO) test ${BUILDFLAGS} ./... -cover $(PACKAGES)
|