@@ -59,18 +59,24 @@ GITHUB_REGISTRY := ghcr.io/oracle
5959OPERATOR_IMAGE_NAME := coherence-operator
6060OPERATOR_IMAGE_REGISTRY ?= $(ORACLE_REGISTRY )
6161OPERATOR_IMAGE_ARM := $(OPERATOR_IMAGE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(VERSION ) -arm64
62+ PREV_OPERATOR_IMAGE_ARM := $(OPERATOR_IMAGE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(PREV_VERSION ) -arm64
6263OPERATOR_IMAGE_AMD := $(OPERATOR_IMAGE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(VERSION ) -amd64
64+ PREV_OPERATOR_IMAGE_AMD := $(OPERATOR_IMAGE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(PREV_VERSION ) -amd64
6365OPERATOR_IMAGE := $(OPERATOR_IMAGE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(VERSION )
66+ PREV_OPERATOR_IMAGE := $(OPERATOR_IMAGE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(PREV_VERSION )
6467OPERATOR_IMAGE_DELVE := $(OPERATOR_IMAGE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :delve
6568OPERATOR_IMAGE_DEBUG := $(OPERATOR_IMAGE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :debug
6669OPERATOR_BASE_IMAGE ?= scratch
6770
6871# The registry we release (push) the operator images to, which can be different to the registry
6972# used to build and test the operator.
70- OPERATOR_RELEASE_REGISTRY ?= $(OPERATOR_IMAGE_REGISTRY )
71- OPERATOR_RELEASE_IMAGE := $(OPERATOR_RELEASE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(VERSION )
72- OPERATOR_RELEASE_ARM := $(OPERATOR_RELEASE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(VERSION ) -arm64
73- OPERATOR_RELEASE_AMD := $(OPERATOR_RELEASE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(VERSION ) -amd64
73+ OPERATOR_RELEASE_REGISTRY ?= $(OPERATOR_IMAGE_REGISTRY )
74+ OPERATOR_RELEASE_IMAGE := $(OPERATOR_RELEASE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(VERSION )
75+ PREV_OPERATOR_RELEASE_IMAGE := $(OPERATOR_RELEASE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(PREV_VERSION )
76+ OPERATOR_RELEASE_ARM := $(OPERATOR_RELEASE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(VERSION ) -arm64
77+ PREV_OPERATOR_RELEASE_ARM := $(OPERATOR_RELEASE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(PREV_VERSION ) -arm64
78+ OPERATOR_RELEASE_AMD := $(OPERATOR_RELEASE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(VERSION ) -amd64
79+ PREV_OPERATOR_RELEASE_AMD := $(OPERATOR_RELEASE_REGISTRY ) /$(OPERATOR_IMAGE_NAME ) :$(PREV_VERSION ) -amd64
7480
7581# ----------------------------------------------------------------------------------------------------------------------
7682# The Coherence image to use for deployments that do not specify an image
@@ -2667,6 +2673,30 @@ endif
26672673 && export DOCKER_CMD=$(DOCKER_CMD) \
26682674 && $(SCRIPTS_DIR)/buildah/run-buildah.sh PUSH
26692675
2676+ .PHONY : rebuild-operator
2677+ rebuild-operator : # # Rebuild the Coherence Operator image
2678+ @echo $(BUILD_DATE ) > $(BUILD_OUTPUT ) /build-date.txt
2679+ $(DOCKER_CMD ) build --platform linux/amd64 --no-cache --build-arg BASE_IMAGE=$(PREV_OPERATOR_IMAGE ) \
2680+ --load -t $(PREV_OPERATOR_IMAGE_AMD ) .
2681+ $(DOCKER_CMD ) build --platform linux/arm64 --no-cache --build-arg BASE_IMAGE=$(PREV_OPERATOR_IMAGE ) \
2682+ --load -t $(PREV_OPERATOR_IMAGE_ARM ) .
2683+
2684+ .PHONY : re-push-operator-image
2685+ re-push-operator-image : rebuild-operator
2686+ ifneq ("$(OPERATOR_RELEASE_REGISTRY ) ","$(OPERATOR_IMAGE_REGISTRY ) ")
2687+ $(DOCKER_CMD) tag $(PREV_OPERATOR_IMAGE_ARM) $(PREV_OPERATOR_RELEASE_ARM)
2688+ $(DOCKER_CMD) tag $(PREV_OPERATOR_IMAGE_AMD) $(PREV_OPERATOR_RELEASE_AMD)
2689+ endif
2690+ chmod +x $(SCRIPTS_DIR)/buildah/run-buildah.sh
2691+ export OPERATOR_IMAGE=$(PREV_OPERATOR_RELEASE_IMAGE) \
2692+ && export OPERATOR_IMAGE_AMD=$(PREV_OPERATOR_RELEASE_AMD) \
2693+ && export OPERATOR_IMAGE_ARM=$(PREV_OPERATOR_RELEASE_ARM) \
2694+ && export OPERATOR_IMAGE_REGISTRY=$(PREV_OPERATOR_RELEASE_REGISTRY) \
2695+ && export VERSION=$(PREV_VERSION) \
2696+ && export REVISION=$(GITCOMMIT) \
2697+ && export NO_DOCKER_DAEMON=$(NO_DOCKER_DAEMON) \
2698+ && export DOCKER_CMD=$(DOCKER_CMD) \
2699+ && $(SCRIPTS_DIR)/buildah/run-buildah.sh PUSH
26702700
26712701# ----------------------------------------------------------------------------------------------------------------------
26722702# Push the Operator JIB Test Docker images
0 commit comments