cloud-provider-pve/Makefile
2020-11-01 00:01:57 +01:00

57 lines
1.4 KiB
Makefile

# Image URL to use all building/pushing image targets
REGISTRY ?= reg.k8s.giftfish.de/library
CONTROLLER_NAME ?= pve-cloud-controller-manager
APPROVER_NAME ?= pve-csr-approver-manager
CONTROLLER_IMG ?= $(REGISTRY)/$(CONTROLLER_NAME)
APPROVER_IMG ?= $(REGISTRY)/$(APPROVER_NAME)
TAG ?= dev
ARCH ?= amd64
PULL_POLICY ?= Always
# Get the currently used golang install path (in GOPATH/bin, unless GOBIN is set)
ifeq (,$(shell go env GOBIN))
GOBIN=$(shell go env GOPATH)/bin
else
GOBIN=$(shell go env GOBIN)
endif
all: manager
# Run tests
test: generate fmt vet manifests
go test ./... -coverprofile cover.out
# Build manager binary
manager: generate fmt vet
go build -o bin/manager main.go
# Run go fmt against code
fmt:
go fmt ./...
# Run go vet against code
vet:
go vet ./...
.PHONY: build-controller
build-controller:
docker build --build-arg ARCH=$(ARCH) --build-arg LDFLAGS="$(LDFLAGS)" -f images/$(CONTROLLER_NAME)/Dockerfile . -t $(CONTROLLER_IMG)-$(ARCH):$(TAG)
.PHONY: build-approver
build-approver:
docker build --build-arg ARCH=$(ARCH) --build-arg LDFLAGS="$(LDFLAGS)" -f images/$(APPROVER_NAME)/Dockerfile . -t $(APPROVER_IMG)-$(ARCH):$(TAG)
.PHONY: docker-build
docker-build: build-controller build-approver
.PHONY: push-controller
push-controller:
docker push $(CONTROLLER_IMG)-$(ARCH):$(TAG)
.PHONY: push-approver
push-approver:
docker push $(APPROVER_IMG)-$(ARCH):$(TAG)
.PHONY: docker-push
docker-push: push-controller push-approver