Unverified Commit a4b31f31 authored by Samruddhi Khandale's avatar Samruddhi Khandale Committed by GitHub

[docker-in-docker] Reverts the retry logic (#659)

* Update install.sh

* [docker-in-docker] Update retry logic

* revert the retry logic!
parent 9fd5daf0
{ {
"id": "docker-in-docker", "id": "docker-in-docker",
"version": "2.3.0", "version": "2.3.1",
"name": "Docker (Docker-in-Docker)", "name": "Docker (Docker-in-Docker)",
"documentationURL": "https://github.com/devcontainers/features/tree/main/src/docker-in-docker", "documentationURL": "https://github.com/devcontainers/features/tree/main/src/docker-in-docker",
"description": "Create child containers *inside* a container, independent from the host's docker instance. Installs Docker extension in the container along with needed CLIs.", "description": "Create child containers *inside* a container, independent from the host's docker instance. Installs Docker extension in the container along with needed CLIs.",
......
...@@ -423,30 +423,12 @@ dockerd_start="AZURE_DNS_AUTO_DETECTION=${AZURE_DNS_AUTO_DETECTION} DOCKER_DEFAU ...@@ -423,30 +423,12 @@ dockerd_start="AZURE_DNS_AUTO_DETECTION=${AZURE_DNS_AUTO_DETECTION} DOCKER_DEFAU
INNEREOF INNEREOF
)" )"
retry_count=0 # Start using sudo if not invoked as root
docker_ok="false" if [ "$(id -u)" -ne 0 ]; then
sudo /bin/sh -c "${dockerd_start}"
until [ "${docker_ok}" = "true" ] || [ "${retry_count}" -eq "5" ]; else
do eval "${dockerd_start}"
# Start using sudo if not invoked as root fi
if [ "$(id -u)" -ne 0 ]; then
sudo /bin/sh -c "${dockerd_start}"
else
eval "${dockerd_start}"
fi
set +e
docker info > /dev/null 2>&1 && docker_ok="true"
if [ "${docker_ok}" != "true" ]; then
echo "(*) Failed to start docker, retrying in 5s..."
retry_count=`expr $retry_count + 1`
sleep 5s
fi
set -e
done
set +e
# Execute whatever commands were passed in (if any). This allows us # Execute whatever commands were passed in (if any). This allows us
# to set this script to ENTRYPOINT while still executing the default CMD. # to set this script to ENTRYPOINT while still executing the default CMD.
......
#!/bin/bash
set -e
# Optional: Import test library
source dev-container-features-test-lib
# Definition specific tests
check "docker-buildx" docker buildx version
check "docker-ps" docker ps
sleep 5s
# Stop docker
pkill dockerd
pkill containerd
sleep 5s
set +e
docker_ok_code="$(docker info > /dev/null 2>&1; echo $?)"
set -e
check "docker-not-running" bash -c "[[ ${docker_ok_code} == 1 ]]"
# Testing retry logic
./test-scripts/docker-test-init.sh
check "docker-started-after-retries" docker ps
# Report result
reportResults
...@@ -67,11 +67,5 @@ ...@@ -67,11 +67,5 @@
} }
}, },
"remoteUser": "node" "remoteUser": "node"
},
"docker_retry": {
"image": "ubuntu:focal",
"features": {
"docker-in-docker": {}
}
} }
} }
#!/bin/sh
#-------------------------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information.
#-------------------------------------------------------------------------------------------------------------
retry_count=0
docker_ok="false"
until [ "${docker_ok}" = "true" ] || [ "${retry_count}" -eq "5" ];
do
if [ "${retry_count}" -eq "3" ]; then
echo "Starting docker after 3 retries..."
/usr/local/share/docker-init.sh
fi
set +e
docker info > /dev/null 2>&1 && docker_ok="true"
if [ "${docker_ok}" != "true" ]; then
echo "(*) Failed to start docker, retrying in 5s... Retry count: ${retry_count}"
retry_count=`expr $retry_count + 1`
sleep 1s
fi
set -e
done
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment