forked from TrueCloudLab/frostfs-http-gw
[#159] Add docker/$(BINS) target
Use this target to build binaries in clean docker environment. Signed-off-by: Alex Vanin <alexey@nspcc.ru>
This commit is contained in:
parent
b0b724393a
commit
5baa2774d5
2 changed files with 15 additions and 4 deletions
14
Makefile
14
Makefile
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
REPO ?= $(shell go list -m)
|
REPO ?= $(shell go list -m)
|
||||||
VERSION ?= $(shell git describe --tags --dirty --always)
|
VERSION ?= $(shell git describe --tags --dirty --always)
|
||||||
|
GO_VERSION ?= 1.17
|
||||||
BUILD ?= $(shell date -u --iso=seconds)
|
BUILD ?= $(shell date -u --iso=seconds)
|
||||||
|
|
||||||
HUB_IMAGE ?= nspccdev/neofs-http-gw
|
HUB_IMAGE ?= nspccdev/neofs-http-gw
|
||||||
|
@ -10,9 +11,9 @@ HUB_TAG ?= "$(shell echo ${VERSION} | sed 's/^v//')"
|
||||||
# List of binaries to build. For now just one.
|
# List of binaries to build. For now just one.
|
||||||
BINDIR = bin
|
BINDIR = bin
|
||||||
DIRS = $(BINDIR)
|
DIRS = $(BINDIR)
|
||||||
BINS = "$(BINDIR)/neofs-http-gw"
|
BINS = $(BINDIR)/neofs-http-gw
|
||||||
|
|
||||||
.PHONY: help all dep clean fmts fmt imports test cover lint docker/lint
|
.PHONY: help all $(BINS) $(DIRS) docker/$(BINS) dep test cover fmts fmt imports image image-push dirty-image lint docker/lint version clean
|
||||||
|
|
||||||
# Make all binaries
|
# Make all binaries
|
||||||
all: $(BINS)
|
all: $(BINS)
|
||||||
|
@ -29,6 +30,15 @@ $(DIRS):
|
||||||
@echo "⇒ Ensure dir: $@"
|
@echo "⇒ Ensure dir: $@"
|
||||||
@mkdir -p $@
|
@mkdir -p $@
|
||||||
|
|
||||||
|
docker/$(BINS):
|
||||||
|
@echo "=> Building binary using clean Docker environment"
|
||||||
|
@docker run --rm -t \
|
||||||
|
-v `pwd`:/src \
|
||||||
|
-w /src \
|
||||||
|
-u "$$(id -u):$$(id -g)" \
|
||||||
|
--env HOME=/src \
|
||||||
|
golang:$(GO_VERSION) make $(BINS)
|
||||||
|
|
||||||
# Pull go dependencies
|
# Pull go dependencies
|
||||||
dep:
|
dep:
|
||||||
@printf "⇒ Download requirements: "
|
@printf "⇒ Download requirements: "
|
||||||
|
|
|
@ -21,9 +21,10 @@ NeoFS HTTP Gateway bridges NeoFS internal protocol and HTTP standard.
|
||||||
```go install github.com/nspcc-dev/neofs-http-gw```
|
```go install github.com/nspcc-dev/neofs-http-gw```
|
||||||
|
|
||||||
Or you can call `make` to build it from the cloned repository (the binary will
|
Or you can call `make` to build it from the cloned repository (the binary will
|
||||||
end up in `bin/neofs-http-gw`).
|
end up in `bin/neofs-http-gw`). To build neofs-http-gw binary in clean docker
|
||||||
|
environment, call `make docker/bin/neofs-http-gw`.
|
||||||
|
|
||||||
Notable make targets:
|
Other notable make targets:
|
||||||
|
|
||||||
```
|
```
|
||||||
dep Check and ensure dependencies
|
dep Check and ensure dependencies
|
||||||
|
|
Loading…
Reference in a new issue