@@ -4,25 +4,30 @@ ROOTDIR=$(dir $(abspath $(lastword $(MAKEFILE_LIST))))
44GOPATH ?= $(shell go env GOPATH)
55GO ?= go
66
7- IMAGE_TAG = garm-provider-azure- build
7+ IMAGE_TAG = garm-provider-build
88
99USER_ID =$(shell ((docker --version | grep -q podman) && echo "0" || id -u))
1010USER_GROUP =$(shell ((docker --version | grep -q podman) && echo "0" || id -g))
11+ GARM_PROVIDER_NAME := garm-provider-azure
1112
1213default : build
1314
14- .PHONY : build build-static test install-lint-deps lint go-test fmt fmtcheck verify-vendor verify
15+ .PHONY : build build-static test install-lint-deps lint go-test fmt fmtcheck verify-vendor verify create-release-files release
1516
1617build :
1718 @$(GO ) build .
1819
20+ clean : # # Clean up build artifacts
21+ @rm -rf ./bin ./build ./release
22+
1923build-static :
2024 @echo Building
2125 docker build --tag $(IMAGE_TAG ) .
22- docker run --rm -e USER_ID=$(USER_ID ) -e USER_GROUP=$(USER_GROUP ) -v $(PWD ) :/build/garm-provider-azure:z $(IMAGE_TAG ) /build-static.sh
23- @echo Binaries are available in $(PWD ) /bin
26+ mkdir -p build
27+ docker run --rm -e GARM_PROVIDER_NAME=$(GARM_PROVIDER_NAME ) -e USER_ID=$(USER_ID ) -e USER_GROUP=$(USER_GROUP ) -v $(PWD ) /build:/build/output:z -v $(PWD ) :/build/$(GARM_PROVIDER_NAME ) :z $(IMAGE_TAG ) /build-static.sh
28+ @echo Binaries are available in $(PWD ) /build
2429
25- test : verify go-test
30+ test : install-lint-deps verify go-test
2631
2732install-lint-deps :
2833 @$(GO ) install github.com/golangci/golangci-lint/cmd/golangci-lint@latest
3742 @$(GO ) fmt $$(go list ./... )
3843
3944fmtcheck :
40- @gofmt -l -s $$(go list ./... | sed -n 's/github.com\/cloudbase\/garm-provider-azure \/\(.*\ ) /\1 /p' ) | grep ".*\.go"; if [ "$$?" -eq 0 ]; then echo "gofmt check failed; please tun gofmt -w -s"; exit 1;fi
45+ @gofmt -l -s $$(go list ./... | sed -n 's/github.com\/cloudbase\/' $( GARM_PROVIDER_NAME ) ' \/\(.*\ ) /\1 /p' ) | grep ".*\.go"; if [ "$$?" -eq 0 ]; then echo "gofmt check failed; please tun gofmt -w -s"; exit 1;fi
4146
4247verify-vendor : # # verify if all the go.mod/go.sum files are up-to-date
4348 $(eval TMPDIR := $(shell mktemp -d) )
4449 @cp -R ${ROOTDIR} ${TMPDIR}
45- @ (cd ${TMPDIR} /garm-provider-azure && ${GO} mod tidy)
46- @diff -r -u -q ${ROOTDIR} ${TMPDIR} /garm-provider-azure > /dev/null 2>&1 ; if [ " $$ ?" -ne 0 ]; then echo " please run: go mod tidy && go mod vendor" ; exit 1; fi
50+ @ (cd ${TMPDIR} /$( GARM_PROVIDER_NAME ) && ${GO} mod tidy)
51+ @diff -r -u -q ${ROOTDIR} ${TMPDIR} /$( GARM_PROVIDER_NAME ) > /dev/null 2>&1 ; if [ " $$ ?" -ne 0 ]; then echo " please run: go mod tidy && go mod vendor" ; exit 1; fi
4752 @rm -rf ${TMPDIR}
4853
4954verify : verify-vendor lint fmtcheck
55+
56+ # #@ Release
57+ create-release-files :
58+ ./scripts/make-release.sh
59+
60+ release : build-static create-release-files # # Create a release
0 commit comments