fix: add sleep to vsock probe retry loop in proxy script

vsock-connect --probe returns instantly on connection refused, so the
wait loop burned through all iterations in ~2s instead of 30s. Add a
0.2s sleep between attempts so the first VM launch has time to boot.
This commit is contained in:
Davíð Steinn Geirsson 2026-03-27 23:30:06 +00:00
parent 72d50a50ee
commit efc991e2d7

View file

@ -235,17 +235,20 @@ let
VMNAME="${vm.name}"
PORT=5000
TIMEOUT=30
ELAPSED=0
INTERVAL=0.2
MAX_ATTEMPTS=$((TIMEOUT * 5)) # TIMEOUT / INTERVAL
ATTEMPT=0
# Wait for vsock to become available
while [ $ELAPSED -lt $TIMEOUT ]; do
while [ $ATTEMPT -lt $MAX_ATTEMPTS ]; do
if ${vsockConnect} --timeout 0.5 --probe "$VMNAME" "$PORT" 2>/dev/null; then
break
fi
ELAPSED=$((ELAPSED + 1))
sleep $INTERVAL
ATTEMPT=$((ATTEMPT + 1))
done
if [ $ELAPSED -ge $TIMEOUT ]; then
if [ $ATTEMPT -ge $MAX_ATTEMPTS ]; then
echo "Timeout waiting for VM ${vm.name} vsock:$PORT" >&2
exit 1
fi