@@ -10,11 +10,13 @@ VERSION_MAJOR_MINOR := $(shell echo $(VERSION_MAJOR_MINOR_PATCH) | cut -f 1,2 -d
1010VERSION_MAJOR := $(shell echo $(VERSION_MAJOR_MINOR ) | cut -f 1 -d '.')
1111COMMIT := $(shell git rev-parse --short HEAD)
1212DOCKERCLI := $(shell which docker)
13+ RELEASE_MODE ?= community
1314
1415GOBUILDDIR := $(SCRIPTDIR ) /.gobuild
1516SRCDIR := $(SCRIPTDIR )
1617CACHEVOL := $(PROJECT ) -gocache
1718BINDIR := $(ROOTDIR ) /bin
19+ VBINDIR := $(BINDIR ) /$(RELEASE_MODE )
1820VENDORDIR := $(ROOTDIR ) /deps
1921DASHBOARDDIR := $(ROOTDIR ) /dashboard
2022
4850
4951HELM_PACKAGE_CMD = $(HELM ) package "$(ROOTDIR ) /chart/$(CHART_NAME ) " \
5052 -d "$(ROOTDIR ) /bin/charts" \
51- --save=false
53+ --save=false --version " $( VERSION ) "
5254
5355HELM_CMD = $(HELM ) template "$(ROOTDIR ) /chart/$(CHART_NAME ) " \
5456 --name "$(NAME ) " \
@@ -95,11 +97,13 @@ endif
9597
9698BASEUBIIMAGE ?= registry.access.redhat.com/ubi8/ubi-minimal:8.4
9799
100+ OPERATORIMAGENAME ?= $(REPONAME )
101+
98102ifndef OPERATORIMAGE
99- OPERATORIMAGE := $(DOCKERNAMESPACE)/kube-arangodb $(IMAGESUFFIX)
103+ OPERATORIMAGE := $(DOCKERNAMESPACE)/$(OPERATORIMAGENAME) $(IMAGESUFFIX)
100104endif
101105ifndef OPERATORUBIIMAGE
102- OPERATORUBIIMAGE := $(DOCKERNAMESPACE)/kube-arangodb $(IMAGESUFFIX)-ubi
106+ OPERATORUBIIMAGE := $(DOCKERNAMESPACE)/$(OPERATORIMAGENAME) $(IMAGESUFFIX)-ubi
103107endif
104108ifndef ENTERPRISEIMAGE
105109 ENTERPRISEIMAGE := $(DEFAULTENTERPRISEIMAGE)
@@ -115,8 +119,7 @@ endif
115119
116120BINNAME := $(PROJECT )
117121BIN := $(BINDIR ) /$(BINNAME )
118- RELEASE := $(GOBUILDDIR ) /bin/release
119- GHRELEASE := $(GOBUILDDIR ) /bin/github-release
122+ VBIN := $(BINDIR ) /$(RELEASE_MODE ) /$(BINNAME )
120123
121124ifdef VERBOSE
122125 TESTVERBOSEOPTIONS := -v
@@ -168,7 +171,7 @@ fmt-verify: license-verify
168171
169172.PHONY : linter
170173linter :
171- $(GOPATH ) /bin/golangci-lint run --no-config --issues-exit-code=1 --deadline=30m --exclude-use-default=false \
174+ $(GOPATH ) /bin/golangci-lint run --build-tags " $( RELEASE_MODE ) " -- no-config --issues-exit-code=1 --deadline=30m --exclude-use-default=false \
172175 --disable-all $(foreach EXCLUDE_DIR,$(EXCLUDE_DIRS ) ,--skip-dirs $(EXCLUDE_DIR ) ) \
173176 $(foreach MODE,$(GOLANGCI_ENABLED ) ,--enable $(MODE ) ) ./...
174177
@@ -222,7 +225,7 @@ update-generated:
222225verify-generated :
223226 @${MAKE} -B -s VERIFYARGS=--verify-only update-generated
224227
225- dashboard/assets.go : $( DASHBOARDSOURCES ) $( DASHBOARDDIR ) /Dockerfile.build
228+ dashboard/assets.go :
226229 cd $(DASHBOARDDIR ) && docker build -t $(DASHBOARDBUILDIMAGE ) -f Dockerfile.build $(DASHBOARDDIR )
227230 @mkdir -p $(DASHBOARDDIR ) /build
228231 docker run --rm \
@@ -236,9 +239,12 @@ dashboard/assets.go: $(DASHBOARDSOURCES) $(DASHBOARDDIR)/Dockerfile.build
236239.PHONY : bin
237240bin : $(BIN )
238241
239- $(BIN ) : $(SOURCES ) dashboard/assets.go VERSION
240- @mkdir -p $(BINDIR )
241- CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -installsuffix netgo -ldflags " -X $( REPOPATH) /pkg/version.version=$( VERSION) -X $( REPOPATH) /pkg/version.buildDate=$( BUILDTIME) -X $( REPOPATH) /pkg/version.build=$( COMMIT) " -o $(BIN ) $(REPOPATH )
242+ $(VBIN ) : $(SOURCES ) dashboard/assets.go VERSION
243+ @mkdir -p $(VBINDIR )
244+ CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build --tags " $( RELEASE_MODE) " -installsuffix netgo -ldflags " -X $( REPOPATH) /pkg/version.version=$( VERSION) -X $( REPOPATH) /pkg/version.buildDate=$( BUILDTIME) -X $( REPOPATH) /pkg/version.build=$( COMMIT) " -o $(VBIN ) $(REPOPATH )
245+
246+ $(BIN ) : $(VBIN )
247+ @cp " $( VBIN) " " $( BIN) "
242248
243249.PHONY : docker
244250docker : check-vars $(BIN )
@@ -333,7 +339,7 @@ manifests: chart-operator
333339
334340.PHONY : run-unit-tests
335341run-unit-tests : $(SOURCES )
336- go test --count=1 $(TESTVERBOSEOPTIONS ) \
342+ go test --count=1 --tags " $( RELEASE_MODE ) " $(TESTVERBOSEOPTIONS ) \
337343 $(REPOPATH ) /pkg/apis/backup/... \
338344 $(REPOPATH ) /pkg/apis/deployment/... \
339345 $(REPOPATH ) /pkg/apis/replication/... \
@@ -363,45 +369,6 @@ patch-release: patch-readme patch-examples
363369patch-chart :
364370 $(ROOTDIR ) /scripts/patch_chart.sh " $( VERSION_MAJOR_MINOR_PATCH) " " $( OPERATORIMAGE) "
365371
366- .PHONY : docker-push
367- docker-push : docker
368- ifneq ($(DOCKERNAMESPACE ) , arangodb)
369- docker tag $(OPERATORIMAGE) $(DOCKERNAMESPACE)/arangodb-operator
370- endif
371- docker push $(DOCKERNAMESPACE)/arangodb-operator
372-
373- .PHONY : docker-push-version
374- docker-push-version : docker
375- docker tag arangodb/arangodb-operator arangodb/arangodb-operator:$(VERSION )
376- docker tag arangodb/arangodb-operator arangodb/arangodb-operator:$(VERSION_MAJOR_MINOR )
377- docker tag arangodb/arangodb-operator arangodb/arangodb-operator:$(VERSION_MAJOR )
378- docker tag arangodb/arangodb-operator arangodb/arangodb-operator:latest
379- docker push arangodb/arangodb-operator:$(VERSION )
380- docker push arangodb/arangodb-operator:$(VERSION_MAJOR_MINOR )
381- docker push arangodb/arangodb-operator:$(VERSION_MAJOR )
382- docker push arangodb/arangodb-operator:latest
383-
384- $(RELEASE ) : $(GOBUILDDIR ) $(SOURCES ) $(GHRELEASE )
385- GOPATH=$(GOBUILDDIR ) go build -o $(RELEASE ) $(REPOPATH ) /tools/release
386-
387- .PHONY : build-ghrelease
388- build-ghrelease : $(GHRELEASE )
389-
390- $(GHRELEASE ) : $(GOBUILDDIR )
391- GOPATH=$(GOBUILDDIR ) go build -o $(GHRELEASE ) github.com/aktau/github-release
392-
393- .PHONY : release-patch
394- release-patch : $(RELEASE )
395- GOPATH=$(GOBUILDDIR ) $(RELEASE ) -type=patch
396-
397- .PHONY : release-minor
398- release-minor : $(RELEASE )
399- GOPATH=$(GOBUILDDIR ) $(RELEASE ) -type=minor
400-
401- .PHONY : release-major
402- release-major : $(RELEASE )
403- GOPATH=$(GOBUILDDIR ) $(RELEASE ) -type=major
404-
405372.PHONY : tidy
406373tidy :
407374 @go mod tidy
@@ -410,7 +377,7 @@ tidy:
410377deps-reload : tidy init
411378
412379.PHONY : init
413- init : tools update-generated $(GHRELEASE ) $( RELEASE ) $( BIN ) vendor
380+ init : tools update-generated $(BIN ) vendor
414381
415382.PHONY : tools
416383tools : update-vendor
0 commit comments