X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=vnfs%2FDAaaS%2Fmicroservices%2Fcollectd-operator%2FMakefile;h=0798914827a6fca147611593177d1a4d55eace3e;hb=f6ec999efa45f7fcd389c32013e792c8beb3c1d8;hp=c3c11f5ec667f06502500f2de184b97f3bf46a50;hpb=3d5a3e06530c1250d48f7d838c619f3bfbcd019d;p=demo.git diff --git a/vnfs/DAaaS/microservices/collectd-operator/Makefile b/vnfs/DAaaS/microservices/collectd-operator/Makefile index c3c11f5e..07989148 100644 --- a/vnfs/DAaaS/microservices/collectd-operator/Makefile +++ b/vnfs/DAaaS/microservices/collectd-operator/Makefile @@ -12,48 +12,66 @@ VERSION := $(shell git describe --tags) BUILD := $(shell git rev-parse --short HEAD) PROJECTNAME := $(shell basename "$(PWD)") -GOPATH := $(shell realpath "$(PWD)/../../../../../") -COP = ${PWD}/build/_output/bin/collectd-operator -IMAGE_NAME = dcr.cluster.local/collectd-operator:latest +GOPATH := $(shell realpath "$(PWD)/../../../../../../") +COP := ${PWD}/build/_output/bin/collectd-operator +COP_LOCAL := ${COP}-local +IMAGE_NAME := dcr.cluster.local:32644/collectd-operator:latest export GOPATH ... export GO111MODULE=on .PHONY: clean plugins -## all: Generate the k8s and openapi artifacts using operator-sdk -all: clean vendor +## build: Generate the k8s and openapi artifacts using operator-sdk +build: clean vendor GOOS=linux GOARCH=amd64 operator-sdk generate k8s --verbose operator-sdk generate openapi --verbose - #@go build -o ${COP} -gcflags all=-trimpath=${GOPATH} -asmflags all=-trimpath=${GOPATH} -mod=vendor demo/vnfs/DAaaS/collectd-operator/cmd/manager + #@go build -o ${COP} -gcflags all=-trimpath=${GOPATH} -asmflags all=-trimpath=${GOPATH} -mod=vendor demo/vnfs/DAaaS/microservices/collectd-operator/cmd/manager + @go build -o ${COP_LOCAL} -mod=vendor demo/vnfs/DAaaS/microservices/collectd-operator/cmd/manager @operator-sdk build ${IMAGE_NAME} --verbose # The following is done this way as each patch on CI runs build and each merge runs deploy. So for build we don't need to build binary and hence # no need to create a static binary with additional flags. However, for generating binary, additional build flags are necessary. This if used with # mock plugin errors out for unit tests. So the seperation avoids the error. -## build: clean the -build: clean test cover +## all: Delete the image, binary, complete build, test and run coverage +all: build test cover +## debug: Build local binary for debugging +debug: + @echo "Deleting ${COP_LOCAL} binary" + @rm -rf ${COP_LOCAL} + operator-sdk generate k8s --verbose + operator-sdk generate openapi --verbose + @echo "Building ${COP_LOCAL} binary" + @go build -o ${COP_LOCAL} -mod=vendor demo/vnfs/DAaaS/microservices/collectd-operator/cmd/manager + +## deploy: Build Dockerfile and publish to repository deploy: build publish +## vendor: Build the vendor module vendor: @go mod vendor +## publish: Push docker image to repository publish: @docker push ${IMAGE_NAME} .PHONY: test +## test: run tests test: clean @go test -v ./... - +## format: format source code format: @go fmt ./... +## clean: clean build artifacts, image, binary clean: @echo "Deleting the collectd-operator binary" - @rm -rf ${PWD}/build/_output/bin/collectd-operator + @rm -rf ${COP} + @rm -rf ${COP_LOCAL} @echo "Deleting the collectd-operator docker image" @docker rmi ${IMAGE_NAME} .PHONY: cover +## cover: run tests and generate coverage report cover: @go test ./... -coverprofile=coverage.out @go tool cover -html=coverage.out -o coverage.html @@ -62,9 +80,9 @@ cover: ## help: Print help message help: Makefile @echo - @echo " Requires -\\t Operator SDK v0.8.0+, go1.12.5+" + @echo " Requires Operator SDK v0.8.0+, go1.12.5+" @echo @echo " Choose a command run in "$(PROJECTNAME)":" @echo @sed -n 's/^## //p' $< | column -t -s ':' | sed -e 's/^/ /' - @echo \ No newline at end of file + @echo