Move provision codegen to (separate) makefile

This commit is contained in:
Denis Arh
2020-10-01 12:04:45 +02:00
parent 1b1f71dc37
commit 61c71859b6
3 changed files with 29 additions and 11 deletions
+13 -3
View File
@@ -1,4 +1,4 @@
.PHONY: pack build help qa critic vet codegen
.PHONY: pack build help qa critic vet codegen provision
GO = go
GOGET = $(GO) get -u
@@ -9,6 +9,7 @@ export GOFLAGS
BUILD_FLAVOUR ?= corteza
BUILD_APPS ?= system compose messaging monolith
BUILD_APPS_TEMP ?= system compose messaging
BUILD_TIME ?= $(shell date +%FT%T%z)
BUILD_VERSION ?= $(shell git describe --tags --abbrev=0)
BUILD_ARCH ?= $(shell go env GOARCH)
@@ -66,11 +67,12 @@ GOTEST = $(GOPATH)/bin/gotest
STATICCHECK = $(GOPATH)/bin/staticcheck
PROTOGEN = $(GOPATH)/bin/protoc-gen-go
GIN = $(GOPATH)/bin/gin
STATIK = $(GOPATH)/bin/statik
CODEGEN = build/codegen
FSWATCH = /usr/local/bin/fswatch
# fswatch is intentionally left out...
BINS = $(GOCRITIC) $(MOCKGEN) $(GOTEST) $(STATICCHECK) $(PROTOGEN) $(GIN) $(CODEGEN)
BINS = $(GOCRITIC) $(MOCKGEN) $(GOTEST) $(STATICCHECK) $(PROTOGEN) $(GIN) $(STATIK) $(CODEGEN)
help:
@echo
@@ -148,10 +150,13 @@ codegen: $(CODEGEN)
watch.codegen: $(CODEGEN)
@ $(CODEGEN) -w -v
clean.codegen:
rm -f $(CODEGEN)
provision:
$(MAKE) --directory=provision clean all
#######################################################################################################################
# Quality Assurance
@@ -226,9 +231,14 @@ $(GIN):
$(GOTEST):
$(GOGET) github.com/rakyll/gotest
$(STATIK):
$(GOGET) github.com/goware/statik
$(CODEGEN):
$(GO) build -o $@ cmd/codegen/main.go
# @todo this will most likely need some special care for other platforms
$(FSWATCH):
ifeq ($(UNAME_S),Darwin)
-8
View File
@@ -18,14 +18,6 @@ function green {
echo -e "\033[32m$@\033[39m"
}
function provision {
yellow "> provision files"
for FOLDER in system compose messaging; do
$GOPATH/bin/statik -p $FOLDER -m -Z -f -src="./provision/$FOLDER/src" -dest "./provision"
done
green "OK"
}
function proto {
yellow "> proto"
+16
View File
@@ -0,0 +1,16 @@
.PHONY: clean statik
PARTS ?= compose messaging system
OUTPUTS ?= $(addsuffix /static.go, $(PARTS))
STATIK = $(GOPATH)/bin/statik
all: $(OUTPUTS)
%/static.go: $(STATIK)
$(STATIK) -p $(@D) -m -Z -f -src=$(@D)/src
clean:
rm -f $(OUTPUTS)
$(STATIK):
$(MAKE) --directory=../ $(STATIK)