55 lines
1.6 KiB
Makefile
55 lines
1.6 KiB
Makefile
GOOS ?= $(shell go env GOOS)
|
|
SOURCES := $(shell find . -type f -name '*.go')
|
|
LDFLAGS := ""
|
|
|
|
# Images management
|
|
REGISTRY_REGION?="ap-southeast-1"
|
|
ACCESS_KEY?=""
|
|
REGISTRY_LOGIN_KEY?=""
|
|
SWR_SERVICE_ADDRESS?="swr.ap-southeast-1.myhuaweicloud.com"
|
|
REGISTRY?="swr.ap-southeast-1.myhuaweicloud.com/karmada"
|
|
REGISTRY_USER_NAME?=""
|
|
REGISTRY_PASSWORD?=""
|
|
REGISTRY_SERVER_ADDRESS?=""
|
|
|
|
# Set you version by env or using latest tags from git
|
|
VERSION?=$(shell git describe --tags)
|
|
|
|
# We don't have tags yet, so just use hardcode one
|
|
VERSION="latest"
|
|
|
|
all: karmada-controller-manager karmadactl
|
|
|
|
karmada-controller-manager: $(SOURCES)
|
|
CGO_ENABLED=0 GOOS=$(GOOS) go build \
|
|
-ldflags $(LDFLAGS) \
|
|
-o karmada-controller-manager \
|
|
cmd/controller-manager/controller-manager.go
|
|
|
|
karmadactl: $(SOURCES)
|
|
CGO_ENABLED=0 GOOS=$(GOOS) go build \
|
|
-ldflags $(LDFLAGS) \
|
|
-o karmadactl \
|
|
cmd/karmadactl/karmadactl.go
|
|
|
|
clean:
|
|
rm -rf karmada-controller-manager
|
|
|
|
test:
|
|
go test ./...
|
|
|
|
images: image-karmada-controller-manager
|
|
|
|
image-karmada-controller-manager: karmada-controller-manager
|
|
cp karmada-controller-manager cluster/images/karmada-controller-manager && \
|
|
docker build -t $(REGISTRY)/karmada-controller-manager:$(VERSION) cluster/images/karmada-controller-manager && \
|
|
rm cluster/images/karmada-controller-manager/karmada-controller-manager
|
|
|
|
upload-images: images
|
|
@echo "push images to $(REGISTRY)"
|
|
ifneq ($(REGISTRY_USER_NAME), "")
|
|
docker login -u ${REGISTRY_USER_NAME} -p ${REGISTRY_PASSWORD} ${REGISTRY_SERVER_ADDRESS}
|
|
endif
|
|
docker push ${REGISTRY}/karmada-controller-manager:${VERSION}
|
|
|