Skip to content

Commit 40330bc

Browse files
authored
[build]: wait up to 60 seconds for docker engine to start (sonic-net#3067)
* [build]: wait 60 seconds for docker engine to start On some platforms, it can take more than 1 second for docker engine to start. Signed-off-by: Guohan Lu <[email protected]>
1 parent 81cf332 commit 40330bc

File tree

2 files changed

+16
-1
lines changed

2 files changed

+16
-1
lines changed

scripts/wait_for_docker.sh

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#!/bin/bash
2+
3+
total_time=$1
4+
cnt=0
5+
while [ $cnt -le $total_time ]; do
6+
docker info 1>/dev/null
7+
rv=$?
8+
if [ $rv -eq 0 ]; then
9+
exit 0
10+
fi
11+
sleep 1
12+
cnt=$((cnt+1))
13+
done
14+
15+
exit 1

slave.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -454,7 +454,7 @@ $(SONIC_INSTALL_WHEELS) : $(PYTHON_WHEELS_PATH)/%-install : .platform $$(addsuff
454454
docker-start :
455455
@sudo sed -i '/http_proxy/d' /etc/default/docker
456456
@sudo bash -c "echo \"export http_proxy=$$http_proxy\" >> /etc/default/docker"
457-
@test x$(SONIC_CONFIG_USE_NATIVE_DOCKERD_FOR_BUILD) != x"y" && sudo service docker status &> /dev/null || ( sudo service docker start &> /dev/null && sleep 1 )
457+
@test x$(SONIC_CONFIG_USE_NATIVE_DOCKERD_FOR_BUILD) != x"y" && sudo service docker status &> /dev/null || ( sudo service docker start &> /dev/null && ./scripts/wait_for_docker.sh 60 )
458458

459459
# targets for building simple docker images that do not depend on any debian packages
460460
$(addprefix $(TARGET_PATH)/, $(SONIC_SIMPLE_DOCKER_IMAGES)) : $(TARGET_PATH)/%.gz : .platform docker-start $$(addsuffix -load,$$(addprefix $(TARGET_PATH)/,$$($$*.gz_LOAD_DOCKERS)))

0 commit comments

Comments
 (0)