configui/Makefile

53 lines
1.1 KiB
Makefile

VERSION=$(shell git describe --tags --abbrev=0)
BUILD=$(shell git rev-parse --short HEAD)
PROJ := $(shell basename "$(PWD)")
HUB=hub.kumoly.io
HUB_PROJECT=tools
LDFLAGS=-ldflags "-X main.Version=${VERSION} -X main.Build=${BUILD} -w"
PLATFORMS=darwin linux
ARCHITECTURES=amd64
APPS=configui
default: build
install:
npm install
clean:
rm -rf dist
run: build
$(shell cd dist; ./${PROJ} -log configui.log)
.PHONY: web
web:
npm run build
# npm run js-dev
.PHONY: build
build:
go build ${LDFLAGS} -o dist/${PROJ} cmd/$(PROJ)/main.go
.PHONY: binary
binary:
bash release.sh cmd/configui/main.go
.PHONY: docker
docker:
docker build --target builder -t $(HUB)/$(HUB_PROJECT)/$(PROJ):builder .
docker build \
-t $(HUB)/$(HUB_PROJECT)/$(PROJ):$(VERSION) \
.
docker-push:
docker tag $(HUB)/$(HUB_PROJECT)/$(PROJ):$(VERSION) $(HUB)/$(HUB_PROJECT)/$(PROJ):latest
docker push $(HUB)/$(HUB_PROJECT)/$(PROJ):$(VERSION)
docker push $(HUB)/$(HUB_PROJECT)/$(PROJ):latest
docker-save:
docker save $(HUB)/$(HUB_PROJECT)/$(PROJ):$(VERSION) | gzip > dist/$(PROJ)-image-$(VERSION)-${BUILD}.tar.gz
.PHONY: release
release: clean web binary docker docker-save