This is an automated email from the ASF dual-hosted git repository.

xiaoxiang781216 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit 1c596841ec1a6ef226b1f67407c25ad59e425bd3
Author: Sarthak Pandey <[email protected]>
AuthorDate: Sun Oct 18 12:09:43 2026 +0530

    ci/workflow: resolve network timeout and MTU issues in docker builds
    
    Configure Docker daemon MTU to 1400 and configure curl timeouts
    and retries to mitigate intermittent network timeouts during CI builds.
    Additionally, enable shallow clone for external repositories and set
    fail-fast to false on matrix builds.
    
    Signed-off-by: Sarthak Pandey <[email protected]>
---
 .github/workflows/build.yml | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 268f446b8ce..583f08b01b5 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -338,6 +338,7 @@ jobs:
       NUTTX_ROMFS_PASSWD_PASSWORD: NuttXSim1!
 
     strategy:
+      fail-fast: false
       max-parallel: 12
       matrix:
         boards: ${{ fromJSON(needs.Linux-Arch.outputs.selected_builds) }}
@@ -370,6 +371,16 @@ jobs:
           restore-keys: |
             ${{ runner.os }}-${{ matrix.boards }}-ccache-
 
+      - name: Configure Docker MTU
+        run: |
+          if [ -f /etc/docker/daemon.json ]; then
+            sudo jq '. + {"mtu": 1400}' /etc/docker/daemon.json > 
/tmp/daemon.json
+            sudo mv /tmp/daemon.json /etc/docker/daemon.json
+          else
+            sudo bash -c 'echo "{\"mtu\": 1400}" > /etc/docker/daemon.json'
+          fi
+          sudo systemctl restart docker
+
       - name: Docker Login
         uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f  # 
v4.6.0
         with:
@@ -391,6 +402,9 @@ jobs:
           run: |
             export ARTIFACTDIR=`pwd`/buildartifacts
 
+            # Configure curl defaults to handle CI network timeouts & flakiness
+            printf 'connect-timeout = 30\nretry = 5\nretry-delay = 5\n' > 
~/.curlrc
+
             for i in 1 2 3; do
               if python -m pip install \
                 --default-timeout=100 \
@@ -414,7 +428,7 @@ jobs:
             # get NTFC test cases
             cd external
             for i in 1 2 3 4 5; do
-              git clone -b release-0.0.2 
https://github.com/apache/nuttx-ntfc-testing && break
+              git clone --depth 1 -b release-0.0.2 
https://github.com/apache/nuttx-ntfc-testing && break
               if [ "$i" -eq 5 ]; then
                 echo "Failed to clone nuttx-ntfc-testing after $i attempts"
                 exit 1
@@ -527,6 +541,7 @@ jobs:
     env:
       NUTTX_ROMFS_PASSWD_PASSWORD: NuttXSim1!
     strategy:
+      fail-fast: false
       max-parallel: 2
       matrix:
         boards: ${{ fromJSON(needs.macOS-Arch.outputs.selected_builds) }}

Reply via email to