.PHONY: build VERSION = $(shell git describe --tags) BUILDTIME = $(shell date +%Y.%m.%d_%H%M) # create the go.mod and go.sum if this is a brand new repo # REDOMOD = $(shell if [ -e go.mod ]; then echo go.mod; else echo no go mod; fi) REDOMOD = $(shell if [ -e go.sum ]; then echo go.sum exists; else GO111MODULE= go mod init; GO111MODULE= go mod tidy; fi) all: goimports gocui # ./zookeeper vet: @GO111MODULE=off go vet @echo this go binary package builds okay nogui: ./zookeeper --gui nocui gocui: build ./zookeeper --gui gocui gocui-debugging: build ./zookeeper --gui gocui >/tmp/forge.log 2>&1 build: goimports vet GO111MODULE=off go build -v -x \ -ldflags "-X main.VERSION=${VERSION} -X main.BUILDTIME=${BUILDTIME} -X gui.GUIVERSION=${VERSION}" install: GO111MODULE=off go install \ -ldflags "-X main.VERSION=${VERSION} -X main.BUILDTIME=${BUILDTIME} -X gui.GUIVERSION=${VERSION}" # this is for release builds using the go.mod files release-build: @echo ${REDOMOD} go build -v -ldflags "-X main.VERSION=${VERSION} -X gui.GUIVERSION=${VERSION}" # makes a .deb package debian: go-deb --auto --repo go.wit.com/apps/zookeeper goimports: goimports -w *.go redomod: rm -f go.* GO111MODULE= go mod init GO111MODULE= go mod tidy clean: rm -f go.* rm -f zookeeper go-mod-clean --purge # git clone the sources and all the golang dependancies into ~/go/src # if you don't have go-clone, you can get it from http://go.wit.com/ git-clone: go-clone --recursive go.wit.com/apps/zookeeper http-toogle-ZOOD: curl --silent http://localhost:8080/flag?flag=ZOOD http-list-machines: curl --silent http://localhost:8080/list