2019-03-26 14:42:26 +03:00
|
|
|
NAME = $(notdir $(PWD))
|
|
|
|
|
2020-07-25 11:09:06 +03:00
|
|
|
VERSION = $(shell git describe --tags --abbrev=0)
|
2019-03-26 14:42:26 +03:00
|
|
|
|
2020-03-06 04:43:53 -06:00
|
|
|
GO111MODULE = on
|
2019-03-26 14:42:26 +03:00
|
|
|
|
|
|
|
REMOTE = kovetskiy
|
|
|
|
|
|
|
|
version:
|
|
|
|
@echo $(VERSION)
|
|
|
|
|
|
|
|
get:
|
|
|
|
go get -v -d
|
|
|
|
|
|
|
|
build:
|
|
|
|
@echo :: building go binary $(VERSION)
|
2019-11-13 15:02:24 +02:00
|
|
|
CGO_ENABLED=0 go build \
|
2019-03-26 14:42:26 +03:00
|
|
|
-ldflags "-X main.version=$(VERSION)" \
|
|
|
|
-gcflags "-trimpath $(GOPATH)/src"
|
|
|
|
|
2023-01-05 11:25:14 +01:00
|
|
|
test:
|
|
|
|
go test -race -coverprofile=profile.cov ./...
|
|
|
|
|
2019-03-26 14:42:26 +03:00
|
|
|
image:
|
|
|
|
@echo :: building image $(NAME):$(VERSION)
|
|
|
|
@docker build -t $(NAME):$(VERSION) -f Dockerfile .
|
|
|
|
docker tag $(NAME):$(VERSION) $(NAME):latest
|
|
|
|
|
|
|
|
push:
|
|
|
|
$(if $(REMOTE),,$(error REMOTE is not set))
|
|
|
|
$(eval VERSION ?= latest)
|
|
|
|
$(eval TAG ?= $(REMOTE)/$(NAME):$(VERSION))
|
|
|
|
@echo :: pushing image $(TAG)
|
|
|
|
@docker tag $(NAME):$(VERSION) $(TAG)
|
|
|
|
@docker push $(TAG)
|
2019-03-26 14:55:38 +03:00
|
|
|
@docker tag $(NAME):$(VERSION) $(REMOTE)/$(NAME):latest
|
2019-03-26 14:42:26 +03:00
|
|
|
@docker push $(REMOTE)/$(NAME):latest
|
|
|
|
|
2020-04-16 14:18:05 +03:00
|
|
|
release: image push
|
|
|
|
git tag -f $(VERSION)
|
|
|
|
git push --tags
|
|
|
|
|
2019-03-26 14:42:26 +03:00
|
|
|
clean:
|
|
|
|
rm -rf $(NAME)
|