-
Notifications
You must be signed in to change notification settings - Fork 12
/
Copy pathMakefile
65 lines (48 loc) · 1.64 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
SHELL=/usr/bin/env bash
git=$(subst -,.,$(shell git describe --always --match=NeVeRmAtCh --dirty 2>/dev/null || git rev-parse --short HEAD 2>/dev/null))
ldflags=-X=github.com/ipfs-force-community/sophon-auth/core.CurrentCommit=+git.$(git)
ifneq ($(strip $(LDFLAGS)),)
ldflags+=-extldflags=$(LDFLAGS)
endif
GOFLAGS+=-ldflags="$(ldflags)"
all: clean sophon-auth
show-env:
@echo '_________________build_environment_______________'
@echo '| git commit=$(git)'
@echo '-------------------------------------------------'
sophon-auth:show-env
go build $(GOFLAGS) -o sophon-auth ./cmd/server/*.go
test:
go test -race ./...
lint:
golangci-lint run
linux: clean
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build $(GOFLAGS) -o sophon-auth ./cmd/server/*.go
clean:
rm -rf sophon-auth
.PHONY: clean
static: clean
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build $(GOFLAGS) -o sophon-auth ./cmd/server/*.go
gen:
go generate ./...
.PHONY: docker
TAG:=test
docker:
ifdef DOCKERFILE
cp $(DOCKERFILE) ./dockerfile
else
curl -o dockerfile https://raw.githubusercontent.com/filecoin-project/venus-docs/master/script/docker/dockerfile
endif
docker build --build-arg HTTPS_PROXY=$(BUILD_DOCKER_PROXY) --build-arg BUILD_TARGET=sophon-auth -t sophon-auth .
docker tag sophon-auth filvenus/sophon-auth:$(TAG)
ifdef PRIVATE_REGISTRY
docker tag sophon-auth $(PRIVATE_REGISTRY)/filvenus/sophon-auth:$(TAG)
endif
docker-push: docker
ifdef PRIVATE_REGISTRY
docker push $(PRIVATE_REGISTRY)/filvenus/sophon-auth:$(TAG)
else
docker push filvenus/sophon-auth:$(TAG)
docker tag filvenus/sophon-auth:$(TAG) filvenus/sophon-auth:latest
docker push filvenus/sophon-auth:latest
endif