@@ -136,10 +136,16 @@ ifeq ($(shell [ ! -z $(TRAVIS) ] && [ "$(TRAVIS_PULL_REQUEST)" != "true" ] && [
136136 MQ_MANIFEST_TAG=$(MQ_VERSION)$(RELEASE_TAG).$(TIMESTAMPFLAT).$(GIT_COMMIT)
137137endif
138138
139+ PATH_TO_MQ_TAG_CACHE =$(TRAVIS_BUILD_DIR ) /.tagcache
140+ MQ_TAG_CACHED =$(MQ_TAG )
141+ ifneq "$(TRAVIS ) " "$(EMPTY ) "
142+ MQ_TAG_CACHED=$(shell cat $(PATH_TO_MQ_TAG_CACHE))
143+ endif
144+
139145# end image tagging
140146
141- MQ_IMAGE_FULL_RELEASE_NAME =$(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG )
142- MQ_IMAGE_DEV_FULL_RELEASE_NAME =$(MQ_IMAGE_DEVSERVER ) :$(MQ_TAG )
147+ MQ_IMAGE_FULL_RELEASE_NAME =$(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG_CACHED )
148+ MQ_IMAGE_DEV_FULL_RELEASE_NAME =$(MQ_IMAGE_DEVSERVER ) :$(MQ_TAG_CACHED )
143149
144150# setup variables for fat-manifests
145151MQ_IMAGE_DEVSERVER_MANIFEST =$(MQ_IMAGE_DEVSERVER ) :$(MQ_MANIFEST_TAG )
@@ -191,6 +197,10 @@ endif
191197.PHONY : downloads
192198downloads : downloads/$(MQ_ARCHIVE_DEV ) downloads/$(MQ_SDK_ARCHIVE )
193199
200+ .PHONY : cache-mq-tag
201+ cache-mq-tag :
202+ @$(shell echo "$(MQ_TAG ) " > $(PATH_TO_MQ_TAG_CACHE ) )
203+
194204# Vendor Go dependencies for the Docker tests
195205test/docker/vendor :
196206 cd test/docker && go mod vendor
@@ -202,9 +212,9 @@ test-unit:
202212
203213.PHONY : test-advancedserver
204214test-advancedserver : test/docker/vendor
205- $(info $(SPACER )$(shell printf $(TITLE ) "Test $(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG ) on $(shell docker --version) "$(END ) ) )
206- docker inspect $(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG )
207- cd test/docker && TEST_IMAGE=$(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG ) EXPECTED_LICENSE=Production go test -parallel $(NUM_CPU ) $(TEST_OPTS_DOCKER )
215+ $(info $(SPACER )$(shell printf $(TITLE ) "Test $(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG_CACHED ) on $(shell docker --version) "$(END ) ) )
216+ docker inspect $(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG_CACHED )
217+ cd test/docker && TEST_IMAGE=$(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG_CACHED ) EXPECTED_LICENSE=Production go test -parallel $(NUM_CPU ) $(TEST_OPTS_DOCKER )
208218
209219.PHONY : build-devjmstest
210220build-devjmstest :
@@ -213,17 +223,17 @@ build-devjmstest:
213223
214224.PHONY : test-devserver
215225test-devserver : test/docker/vendor
216- $(info $(SPACER )$(shell printf $(TITLE ) "Test $(MQ_IMAGE_DEVSERVER ) :$(MQ_TAG ) on $(shell docker --version) "$(END ) ) )
217- docker inspect $(MQ_IMAGE_DEVSERVER ) :$(MQ_TAG )
218- cd test/docker && TEST_IMAGE=$(MQ_IMAGE_DEVSERVER ) :$(MQ_TAG ) EXPECTED_LICENSE=Developer DEV_JMS_IMAGE=$(DEV_JMS_IMAGE ) IBMJRE=true go test -parallel $(NUM_CPU ) -tags mqdev $(TEST_OPTS_DOCKER )
226+ $(info $(SPACER )$(shell printf $(TITLE ) "Test $(MQ_IMAGE_DEVSERVER ) :$(MQ_TAG_CACHED ) on $(shell docker --version) "$(END ) ) )
227+ docker inspect $(MQ_IMAGE_DEVSERVER ) :$(MQ_TAG_CACHED )
228+ cd test/docker && TEST_IMAGE=$(MQ_IMAGE_DEVSERVER ) :$(MQ_TAG_CACHED ) EXPECTED_LICENSE=Developer DEV_JMS_IMAGE=$(DEV_JMS_IMAGE ) IBMJRE=true go test -parallel $(NUM_CPU ) -tags mqdev $(TEST_OPTS_DOCKER )
219229
220230.PHONY : coverage
221231coverage :
222232 mkdir coverage
223233
224234.PHONY : test-advancedserver-cover
225235test-advancedserver-cover : test/docker/vendor coverage
226- $(info $(SPACER )$(shell printf $(TITLE ) "Test $(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG ) with code coverage on $(shell docker --version) "$(END ) ) )
236+ $(info $(SPACER )$(shell printf $(TITLE ) "Test $(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG_CACHED ) with code coverage on $(shell docker --version) "$(END ) ) )
227237 rm -f ./coverage/unit* .cov
228238 # Run unit tests with coverage, for each package under 'internal'
229239 go list -f ' {{.Name}}' ./internal/... | xargs -I {} go test -cover -covermode count -coverprofile ./coverage/unit-{}.cov ./internal/{}
@@ -235,7 +245,7 @@ test-advancedserver-cover: test/docker/vendor coverage
235245 rm -f ./test/docker/coverage/*.cov
236246 rm -f ./coverage/docker.*
237247 mkdir -p ./test/docker/coverage/
238- cd test/docker && TEST_IMAGE=$(MQ_IMAGE_ADVANCEDSERVER):$(MQ_TAG )-cover TEST_COVER=true go test $(TEST_OPTS_DOCKER)
248+ cd test/docker && TEST_IMAGE=$(MQ_IMAGE_ADVANCEDSERVER):$(MQ_TAG_CACHED )-cover TEST_COVER=true go test $(TEST_OPTS_DOCKER)
239249 echo 'mode: count' > ./coverage/docker.cov
240250 tail -q -n +2 ./test/docker/coverage/*.cov >> ./coverage/docker.cov
241251 go tool cover -html=./coverage/docker.cov -o ./coverage/docker.html
@@ -291,20 +301,20 @@ build-advancedserver-host: build-advancedserver
291301
292302.PHONY : build-advancedserver
293303build-advancedserver : registry-login log-build-env downloads/$(MQ_ARCHIVE ) command-version
294- $(info $(SPACER )$(shell printf $(TITLE ) "Build $(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG ) "$(END ) ) )
295- $(call build-mq,$(MQ_IMAGE_ADVANCEDSERVER ) ,$(MQ_TAG ) ,Dockerfile-server,$(MQ_ARCHIVE ) ,mq-server)
304+ $(info $(SPACER )$(shell printf $(TITLE ) "Build $(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG_CACHED ) "$(END ) ) )
305+ $(call build-mq,$(MQ_IMAGE_ADVANCEDSERVER ) ,$(MQ_TAG_CACHED ) ,Dockerfile-server,$(MQ_ARCHIVE ) ,mq-server)
296306
297307.PHONY : build-devserver-host
298308build-devserver-host : build-devserver
299309
300310.PHONY : build-devserver
301311build-devserver : registry-login log-build-env downloads/$(MQ_ARCHIVE_DEV ) command-version
302- $(info $(shell printf $(TITLE ) "Build $(MQ_IMAGE_DEVSERVER ) :$(MQ_TAG ) "$(END ) ) )
303- $(call build-mq,$(MQ_IMAGE_DEVSERVER ) ,$(MQ_TAG ) ,Dockerfile-server,$(MQ_ARCHIVE_DEV ) ,mq-dev-server)
312+ $(info $(shell printf $(TITLE ) "Build $(MQ_IMAGE_DEVSERVER ) :$(MQ_TAG_CACHED ) "$(END ) ) )
313+ $(call build-mq,$(MQ_IMAGE_DEVSERVER ) ,$(MQ_TAG_CACHED ) ,Dockerfile-server,$(MQ_ARCHIVE_DEV ) ,mq-dev-server)
304314
305315.PHONY : build-advancedserver-cover
306316build-advancedserver-cover : registry-login command-version
307- $(COMMAND ) build --build-arg BASE_IMAGE=$(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG ) -t $(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG ) -cover -f Dockerfile-server.cover .
317+ $(COMMAND ) build --build-arg BASE_IMAGE=$(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG_CACHED ) -t $(MQ_IMAGE_ADVANCEDSERVER ) :$(MQ_TAG_CACHED ) -cover -f Dockerfile-server.cover .
308318
309319.PHONY : build-explorer
310320build-explorer : registry-login downloads/$(MQ_ARCHIVE_DEV )
@@ -313,7 +323,7 @@ build-explorer: registry-login downloads/$(MQ_ARCHIVE_DEV)
313323.PHONY : build-sdk
314324build-sdk : registry-login downloads/$(MQ_ARCHIVE_DEV )
315325 $(info $(shell printf $(TITLE ) "Build $(MQ_IMAGE_SDK ) "$(END ) ) )
316- $(call build-mq,mq-sdk,$(MQ_TAG ) ,incubating/mq-sdk/Dockerfile,$(MQ_SDK_ARCHIVE ) ,mq-sdk)
326+ $(call build-mq,mq-sdk,$(MQ_TAG_CACHED ) ,incubating/mq-sdk/Dockerfile,$(MQ_SDK_ARCHIVE ) ,mq-sdk)
317327
318328.PHONY : registry-login
319329registry-login :
@@ -353,29 +363,29 @@ pull-mq-archive-dev:
353363push-advancedserver :
354364 $(info $(SPACER )$(shell printf $(TITLE ) "Push production image to $(MQ_DELIVERY_REGISTRY_FULL_PATH ) "$(END ) ) )
355365 $(COMMAND ) login $(MQ_DELIVERY_REGISTRY_HOSTNAME ) -u $(MQ_DELIVERY_REGISTRY_USER ) -p $(MQ_DELIVERY_REGISTRY_CREDENTIAL )
356- $(COMMAND ) tag $(MQ_IMAGE_ADVANCEDSERVER ) \: $(MQ_TAG ) $(MQ_DELIVERY_REGISTRY_FULL_PATH ) /$(MQ_IMAGE_FULL_RELEASE_NAME )
366+ $(COMMAND ) tag $(MQ_IMAGE_ADVANCEDSERVER ) \: $(MQ_TAG_CACHED ) $(MQ_DELIVERY_REGISTRY_FULL_PATH ) /$(MQ_IMAGE_FULL_RELEASE_NAME )
357367 $(COMMAND ) push $(MQ_DELIVERY_REGISTRY_FULL_PATH ) /$(MQ_IMAGE_FULL_RELEASE_NAME )
358368
359369.PHONY : push-devserver
360370push-devserver :
361371 $(info $(SPACER )$(shell printf $(TITLE ) "Push developer image to $(MQ_DELIVERY_REGISTRY_FULL_PATH ) "$(END ) ) )
362372 $(COMMAND ) login $(MQ_DELIVERY_REGISTRY_HOSTNAME ) -u $(MQ_DELIVERY_REGISTRY_USER ) -p $(MQ_DELIVERY_REGISTRY_CREDENTIAL )
363- $(COMMAND ) tag $(MQ_IMAGE_DEVSERVER ) \: $(MQ_TAG ) $(MQ_DELIVERY_REGISTRY_FULL_PATH ) /$(MQ_IMAGE_DEV_FULL_RELEASE_NAME )
373+ $(COMMAND ) tag $(MQ_IMAGE_DEVSERVER ) \: $(MQ_TAG_CACHED ) $(MQ_DELIVERY_REGISTRY_FULL_PATH ) /$(MQ_IMAGE_DEV_FULL_RELEASE_NAME )
364374 $(COMMAND ) push $(MQ_DELIVERY_REGISTRY_FULL_PATH ) /$(MQ_IMAGE_DEV_FULL_RELEASE_NAME )
365375
366376.PHONY : pull-advancedserver
367377pull-advancedserver :
368378 $(info $(SPACER )$(shell printf $(TITLE ) "Pull production image from $(MQ_DELIVERY_REGISTRY_FULL_PATH ) "$(END ) ) )
369379 $(COMMAND ) login $(MQ_DELIVERY_REGISTRY_HOSTNAME ) -u $(MQ_DELIVERY_REGISTRY_USER ) -p $(MQ_DELIVERY_REGISTRY_CREDENTIAL )
370380 $(COMMAND ) pull $(MQ_DELIVERY_REGISTRY_FULL_PATH ) /$(MQ_IMAGE_FULL_RELEASE_NAME )
371- $(COMMAND ) tag $(MQ_DELIVERY_REGISTRY_FULL_PATH ) /$(MQ_IMAGE_FULL_RELEASE_NAME ) $(MQ_IMAGE_ADVANCEDSERVER ) \: $(MQ_TAG )
381+ $(COMMAND ) tag $(MQ_DELIVERY_REGISTRY_FULL_PATH ) /$(MQ_IMAGE_FULL_RELEASE_NAME ) $(MQ_IMAGE_ADVANCEDSERVER ) \: $(MQ_TAG_CACHED )
372382
373383.PHONY : pull-devserver
374384pull-devserver :
375385 $(info $(SPACER )$(shell printf $(TITLE ) "Pull developer image from $(MQ_DELIVERY_REGISTRY_FULL_PATH ) "$(END ) ) )
376386 $(COMMAND ) login $(MQ_DELIVERY_REGISTRY_HOSTNAME ) -u $(MQ_DELIVERY_REGISTRY_USER ) -p $(MQ_DELIVERY_REGISTRY_CREDENTIAL )
377387 $(COMMAND ) pull $(MQ_DELIVERY_REGISTRY_FULL_PATH ) /$(MQ_IMAGE_DEV_FULL_RELEASE_NAME )
378- $(COMMAND ) tag $(MQ_DELIVERY_REGISTRY_FULL_PATH ) /$(MQ_IMAGE_DEV_FULL_RELEASE_NAME ) $(MQ_IMAGE_DEVSERVER ) \: $(MQ_TAG )
388+ $(COMMAND ) tag $(MQ_DELIVERY_REGISTRY_FULL_PATH ) /$(MQ_IMAGE_DEV_FULL_RELEASE_NAME ) $(MQ_IMAGE_DEVSERVER ) \: $(MQ_TAG_CACHED )
379389
380390.PHONY : push-manifest
381391push-manifest : build-skopeo-container
0 commit comments