@@ -120,6 +120,12 @@ KIND := $(TOOLS_BIN_DIR)/kind
120120TOOLING_BINARIES := $(GINKGO ) $(KIND )
121121E2E_DIR := $(abspath test/e2e)
122122
123+ KPROMO_VER := 5ab0dbc74b0228c22a93d240596dff77464aee8f
124+ KPROMO_BIN := kpromo
125+ KPROMO := $(abspath $(TOOLS_BIN_DIR ) /$(KPROMO_BIN ) -$(KPROMO_VER ) )
126+ # KPROMO_PKG may have to be changed if KPROMO_VER increases its major version.
127+ KPROMO_PKG := sigs.k8s.io/promo-tools/v4/cmd/kpromo
128+
123129# ###############################################################################
124130# # DIST ##
125131# ###############################################################################
@@ -402,6 +408,10 @@ VERSION ?=$(shell git describe --dirty --always)
402408IMAGE_PATH := $(STAGING_REGISTRY ) /$(IMAGE_NAME ) :$(VERSION )
403409BINARY_PATH := gs://$(STAGING_BUCKET ) /$(VERSION ) /bin/$(GOOS ) /$(GOARCH )
404410LOCAL_BINARY_PATH := $(abspath $(BIN_OUT ) ) /vsphere-cloud-controller-manager.$(GOOS ) _$(GOARCH )
411+ # # latest git tag for the commit, e.g., v0.3.10
412+ RELEASE_TAG ?= $(shell git describe --abbrev=0 2>/dev/null)
413+ # # Hardcode active reviews
414+ IMAGE_REVIEWERS ="@chenlin07 @DanielXiao @fabriziopandini @sbueringer @silvery1622 @zhanggbj"
405415
406416.PHONY : docker-build-and-push
407417docker-build-and-push :
@@ -442,3 +452,14 @@ release-staging:
442452 $(MAKE ) docker-build-and-push
443453 $(MAKE ) build-bins
444454 $(MAKE ) ccm-bin-push
455+
456+ .PHONY : promote-images
457+ promote-images : $(KPROMO )
458+ ifeq ($(strip $(USER_FORK ) ) ,)
459+ $(error USER_FORK is required. Usage: make deploy USER_FORK=githubid)
460+ endif
461+ @echo "Promoting image using fork repo of: $(USER_FORK)"
462+ $(KPROMO) pr --project cloud-pv-vsphere --tag $(RELEASE_TAG) --reviewers "$(IMAGE_REVIEWERS)" --fork $(USER_FORK) --image cloud-provider-vsphere
463+
464+ $(KPROMO ) :
465+ GOBIN=$(TOOLS_BIN_DIR ) $(GO_INSTALL ) $(KPROMO_PKG ) $(KPROMO_BIN ) $(KPROMO_VER )
0 commit comments