[#369] Add env GOFLAGS passing in Make targets
All checks were successful
/ DCO (pull_request) Successful in 1m5s
/ Vulncheck (pull_request) Successful in 1m16s
/ Builds (1.20) (pull_request) Successful in 1m24s
/ Builds (1.21) (pull_request) Successful in 1m30s
/ Lint (pull_request) Successful in 2m0s
/ Tests (1.20) (pull_request) Successful in 1m42s
/ Tests (1.21) (pull_request) Successful in 1m43s
All checks were successful
/ DCO (pull_request) Successful in 1m5s
/ Vulncheck (pull_request) Successful in 1m16s
/ Builds (1.20) (pull_request) Successful in 1m24s
/ Builds (1.21) (pull_request) Successful in 1m30s
/ Lint (pull_request) Successful in 2m0s
/ Tests (1.20) (pull_request) Successful in 1m42s
/ Tests (1.21) (pull_request) Successful in 1m43s
Signed-off-by: Nikita Zinkevich <n.zinkevich@yadro.com>
This commit is contained in:
parent
49362c454d
commit
e5494f4383
4 changed files with 11 additions and 3 deletions
|
@ -3,11 +3,12 @@ FROM golang:1.21 as builder
|
||||||
ARG BUILD=now
|
ARG BUILD=now
|
||||||
ARG REPO=git.frostfs.info/TrueCloudLab/frostfs-s3-gw
|
ARG REPO=git.frostfs.info/TrueCloudLab/frostfs-s3-gw
|
||||||
ARG VERSION=dev
|
ARG VERSION=dev
|
||||||
|
ARG GOFLAGS=""
|
||||||
|
|
||||||
WORKDIR /src
|
WORKDIR /src
|
||||||
COPY . /src
|
COPY . /src
|
||||||
|
|
||||||
RUN make
|
RUN make GOFLAGS=${GOFLAGS}
|
||||||
|
|
||||||
# Executable image
|
# Executable image
|
||||||
FROM alpine AS frostfs-s3-gw
|
FROM alpine AS frostfs-s3-gw
|
||||||
|
|
6
Makefile
6
Makefile
|
@ -14,6 +14,8 @@ METRICS_DUMP_OUT ?= ./metrics-dump.json
|
||||||
CMDS = $(addprefix frostfs-, $(notdir $(wildcard cmd/*)))
|
CMDS = $(addprefix frostfs-, $(notdir $(wildcard cmd/*)))
|
||||||
BINS = $(addprefix $(BINDIR)/, $(CMDS))
|
BINS = $(addprefix $(BINDIR)/, $(CMDS))
|
||||||
|
|
||||||
|
GOFLAGS ?=
|
||||||
|
|
||||||
# Variables for docker
|
# Variables for docker
|
||||||
REPO_BASENAME = $(shell basename `go list -m`)
|
REPO_BASENAME = $(shell basename `go list -m`)
|
||||||
HUB_IMAGE ?= "truecloudlab/$(REPO_BASENAME)"
|
HUB_IMAGE ?= "truecloudlab/$(REPO_BASENAME)"
|
||||||
|
@ -38,6 +40,7 @@ all: $(BINS)
|
||||||
$(BINS): $(BINDIR) dep
|
$(BINS): $(BINDIR) dep
|
||||||
@echo "⇒ Build $@"
|
@echo "⇒ Build $@"
|
||||||
CGO_ENABLED=0 \
|
CGO_ENABLED=0 \
|
||||||
|
GOFLAGS=$(GOFLAGS) \
|
||||||
go build -v -trimpath \
|
go build -v -trimpath \
|
||||||
-ldflags "-X $(REPO)/internal/version.Version=$(VERSION)" \
|
-ldflags "-X $(REPO)/internal/version.Version=$(VERSION)" \
|
||||||
-o $@ ./cmd/$(subst frostfs-,,$(notdir $@))
|
-o $@ ./cmd/$(subst frostfs-,,$(notdir $@))
|
||||||
|
@ -64,7 +67,7 @@ docker/%:
|
||||||
-w /src \
|
-w /src \
|
||||||
-u `stat -c "%u:%g" .` \
|
-u `stat -c "%u:%g" .` \
|
||||||
--env HOME=/src \
|
--env HOME=/src \
|
||||||
golang:$(GO_VERSION) make $*,\
|
golang:$(GO_VERSION) make GOFLAGS=$(GOFLAGS) $*,\
|
||||||
@echo "supported docker targets: all $(BINS) lint")
|
@echo "supported docker targets: all $(BINS) lint")
|
||||||
|
|
||||||
# Run tests
|
# Run tests
|
||||||
|
@ -87,6 +90,7 @@ image:
|
||||||
@docker build \
|
@docker build \
|
||||||
--build-arg REPO=$(REPO) \
|
--build-arg REPO=$(REPO) \
|
||||||
--build-arg VERSION=$(VERSION) \
|
--build-arg VERSION=$(VERSION) \
|
||||||
|
--build-arg GOFLAGS=$(GOFLAGS) \
|
||||||
--rm \
|
--rm \
|
||||||
-f .docker/Dockerfile \
|
-f .docker/Dockerfile \
|
||||||
-t $(HUB_IMAGE):$(HUB_TAG) .
|
-t $(HUB_IMAGE):$(HUB_TAG) .
|
||||||
|
|
|
@ -377,6 +377,9 @@ logger:
|
||||||
|
|
||||||
### `http_logging` section
|
### `http_logging` section
|
||||||
|
|
||||||
|
Could be enabled only in builds with `loghttp` build tag. This could be done via `loghttp`,
|
||||||
|
`docker/loghttp` or `image-loghttp` Make targets.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
http_logging:
|
http_logging:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
2
help.mk
2
help.mk
|
@ -12,7 +12,7 @@ help:
|
||||||
|
|
||||||
# Show help for docker/% IGNORE
|
# Show help for docker/% IGNORE
|
||||||
help.docker/%:
|
help.docker/%:
|
||||||
$(eval TARGETS:=$(notdir all lint) ${BINS})
|
$(eval TARGETS:=$(notdir all lint loghttp) ${BINS})
|
||||||
@echo ' Usage:'
|
@echo ' Usage:'
|
||||||
@echo ''
|
@echo ''
|
||||||
@echo ' make docker/% -- Run `make %` in Golang container'
|
@echo ' make docker/% -- Run `make %` in Golang container'
|
||||||
|
|
Loading…
Reference in a new issue