From ad41268dc21802bb5bb80ab26154c62b2bdb138a Mon Sep 17 00:00:00 2001 From: xumia <59720581+xumia@users.noreply.github.com> Date: Thu, 15 Dec 2022 21:03:21 +0800 Subject: [PATCH] [Build] Fix the docker image docker-dhcp-relay:latest not found issue (#13048) Why I did it It is to fix the broadcom build failure, it is caused by the build image docker-dhcp-relay:latest not found. 2022-12-14T00:09:57.5464893Z [ FAIL LOG START ] [ target/docker-dhcp-relay.gz-load ] 2022-12-14T00:09:57.5466036Z Attempting docker image lock for docker-dhcp-relay load 2022-12-14T00:09:57.5467113Z Obtained docker image lock for docker-dhcp-relay load 2022-12-14T00:09:57.5468206Z Loading docker image target/docker-dhcp-relay.gz 2022-12-14T00:09:57.5469361Z Loaded image: docker-dhcp-relay:internal.65852159-11ad82a07a 2022-12-14T00:09:57.5470686Z Tagging docker image docker-dhcp-relay:latest as docker-dhcp-relay-sonic:latest 2022-12-14T00:09:57.5471997Z Error response from daemon: No such image: docker-dhcp-relay:latest 2022-12-14T00:09:57.5473122Z [ FAIL LOG END ] [ target/docker-dhcp-relay.gz-load ] 2022-12-14T00:09:57.5539792Z make: *** [slave.mk:1180: target/docker-dhcp-relay.gz-load] Error 1 2022-12-14T00:09:57.5540958Z make: *** Waiting for unfinished jobs.... The image had been built succeeded 2022-12-13T17:01:59.9046935Z [ finished ] [ target/docker-eventd.gz ] 2022-12-13T17:02:00.4947165Z [ building ] [ target/docker-dhcp-relay.gz ] 2022-12-13T17:02:00.6688627Z /sonic/dockers/docker-dhcp-relay/cli-plugin-tests /sonic 2022-12-13T17:02:41.1123955Z /sonic 2022-12-13T17:07:04.1786069Z [ finished ] [ target/docker-dhcp-relay.gz ] But it was tagged by another value: Obtained docker image lock for docker-dhcp-relay save Tagging docker image docker-dhcp-relay-sonic:latest as docker-dhcp-relay:internal.65852159-11ad82a07a Saving docker image docker-dhcp-relay:internal.65852159-11ad82a07a Released docker image lock for docker-dhcp-relay save Removing docker image docker-dhcp-relay-sonic:latest Untagged: docker-dhcp-relay-sonic:latest target/docker-dhcp-relay.gz File /dpkg_cache/docker-dhcp-relay.gz-2ddfa01a109ca69b7621f1a-450bae36026d9dee62646f2.tgz saved in cache [ CACHE::SAVED ] /dpkg_cache/docker-dhcp-relay.gz-2ddfa01a109ca69b7621f1a-450bae36026d9dee62646f2.tgz How I did it When the feature SONIC_CONFIG_USE_NATIVE_DOCKERD_FOR_BUILD not enabled, always save as the latest tag, not use the specify version. The version is dynamic, it is changed when a new commit checked in, but the image of docker-dhcp-relay is not necessary to change. --- slave.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/slave.mk b/slave.mk index 308182bba4e3..faaaff986a83 100644 --- a/slave.mk +++ b/slave.mk @@ -389,7 +389,7 @@ export vs_build_prepare_mem=$(VS_PREPARE_MEM) # $(1) => Docker name define docker-get-tag -$(shell [ ! -z $(filter $(1).gz,$(SONIC_PACKAGES_LOCAL)) ] && echo $(SONIC_IMAGE_VERSION) || echo latest) +$(shell [ ! -z $(filter $(1).gz,$(SONIC_PACKAGES_LOCAL)) ] && [ x$(SONIC_CONFIG_USE_NATIVE_DOCKERD_FOR_BUILD) == x"y" ] && echo $(SONIC_IMAGE_VERSION) || echo latest) endef # $(call docker-image-save,from,to)