From f626c4fbee3c668ed0b92af0874bbbeb997ec370 Mon Sep 17 00:00:00 2001 From: Fedor Chelnokov Date: Fri, 24 Apr 2026 14:55:40 +0300 Subject: [PATCH 1/4] ci(macos): retry upload-artifact via Wandalen/wretry.action (mirrors MeshInspectorCode#7234) --- .github/workflows/build-test-macos.yml | 27 ++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build-test-macos.yml b/.github/workflows/build-test-macos.yml index 1800afe27fb3..aa5062b2e922 100644 --- a/.github/workflows/build-test-macos.yml +++ b/.github/workflows/build-test-macos.yml @@ -255,15 +255,21 @@ jobs: --build c-examples-build \ --parallel $(sysctl -n hw.physicalcpu) + # Retry the upload on self-hosted-runner network blips. - name: Upload Macos Distribution if: ${{ inputs.upload_artifacts && matrix.config == 'Release' }} - uses: actions/upload-artifact@v7 env: ACTIONS_ARTIFACT_UPLOAD_TIMEOUT_MS: 1800000 + uses: Wandalen/wretry.action@e68c23e6309f2871ca8ae4763e7629b9c258e1ea # v3.8.0 with: - name: Distributives_macos-${{matrix.os}} - path: meshlib_${{matrix.os}}.pkg - retention-days: 1 + action: actions/upload-artifact@v7 + attempt_limit: 3 + attempt_delay: 30000 # milliseconds + with: | + name: Distributives_macos-${{matrix.os}} + path: meshlib_${{matrix.os}}.pkg + retention-days: 1 + overwrite: true - name: Collect artifact stats if: ${{ inputs.internal_build && inputs.upload_artifacts }} @@ -286,8 +292,13 @@ jobs: - name: Upload NuGet files to Artifacts if: ${{ inputs.nuget_build_patch && matrix.config == 'Release' }} - uses: actions/upload-artifact@v7 + uses: Wandalen/wretry.action@e68c23e6309f2871ca8ae4763e7629b9c258e1ea # v3.8.0 with: - name: DotNetPatchArchiveMacOs-${{ matrix.arch }} - path: ./patched_content/* - retention-days: 1 + action: actions/upload-artifact@v7 + attempt_limit: 3 + attempt_delay: 30000 # milliseconds + with: | + name: DotNetPatchArchiveMacOs-${{ matrix.arch }} + path: ./patched_content/* + retention-days: 1 + overwrite: true From 17363b7dd4f568bc6020c32f09a132f76ce9bb23 Mon Sep 17 00:00:00 2001 From: Fedor Chelnokov Date: Fri, 24 Apr 2026 14:55:42 +0300 Subject: [PATCH 2/4] ci(windows): retry upload-artifact via Wandalen/wretry.action (mirrors MeshInspectorCode#7234) --- .github/workflows/build-test-windows.yml | 57 ++++++++++++++++-------- 1 file changed, 39 insertions(+), 18 deletions(-) diff --git a/.github/workflows/build-test-windows.yml b/.github/workflows/build-test-windows.yml index 2a83cea31c98..42eaf6d1a616 100644 --- a/.github/workflows/build-test-windows.yml +++ b/.github/workflows/build-test-windows.yml @@ -333,13 +333,19 @@ jobs: if: ${{ inputs.upload_artifacts && matrix.cxx_compiler == 'msvc-2019' && matrix.build_system == 'CMake' && matrix.config == 'Release' && inputs.mrbind_c }} run: tar -a -c -f MeshLibC2Headers.zip ./source/MeshLibC2/include + # Retry the upload on self-hosted-runner network blips. - name: Upload Windows Binaries Archive if: ${{ inputs.upload_artifacts && matrix.cxx_compiler == 'msvc-2019' && matrix.build_system == 'CMake' }} - uses: actions/upload-artifact@v7 + uses: Wandalen/wretry.action@e68c23e6309f2871ca8ae4763e7629b9c258e1ea # v3.8.0 with: - name: WindowsArchive_${{ matrix.upload_name || matrix.config }} - path: MREDist_${{ matrix.upload_name || matrix.config }}.zip - retention-days: 1 + action: actions/upload-artifact@v7 + attempt_limit: 3 + attempt_delay: 30000 # milliseconds + with: | + name: WindowsArchive_${{ matrix.upload_name || matrix.config }} + path: MREDist_${{ matrix.upload_name || matrix.config }}.zip + retention-days: 1 + overwrite: true - name: Collect artifact stats if: ${{ inputs.internal_build && inputs.upload_artifacts }} @@ -352,11 +358,16 @@ jobs: - name: Upload MeshLibC2 headers archive if: ${{ inputs.upload_artifacts && matrix.cxx_compiler == 'msvc-2019' && matrix.build_system == 'CMake' && matrix.config == 'Release' && inputs.mrbind_c }} - uses: actions/upload-artifact@v7 + uses: Wandalen/wretry.action@e68c23e6309f2871ca8ae4763e7629b9c258e1ea # v3.8.0 with: - name: WindowsArchive_MeshLibC2Headers - path: MeshLibC2Headers.zip - retention-days: 1 + action: actions/upload-artifact@v7 + attempt_limit: 3 + attempt_delay: 30000 # milliseconds + with: | + name: WindowsArchive_MeshLibC2Headers + path: MeshLibC2Headers.zip + retention-days: 1 + overwrite: true - name: Create and fix fake Wheel for NuGet if: ${{ inputs.nuget_build && matrix.cxx_compiler == 'msvc-2022' && matrix.config == 'Release' && env.BUILD_C_SHARP == 'true' }} @@ -368,18 +379,28 @@ jobs: - name: Upload NuGet files to Artifacts if: ${{ inputs.nuget_build && matrix.cxx_compiler == 'msvc-2022' && matrix.config == 'Release' && env.BUILD_C_SHARP == 'true' }} - uses: actions/upload-artifact@v7 + uses: Wandalen/wretry.action@e68c23e6309f2871ca8ae4763e7629b9c258e1ea # v3.8.0 with: - name: DotNetPatchArchiveWindows-x64 - path: ./patched_content/* - retention-days: 1 + action: actions/upload-artifact@v7 + attempt_limit: 3 + attempt_delay: 30000 # milliseconds + with: | + name: DotNetPatchArchiveWindows-x64 + path: ./patched_content/* + retention-days: 1 + overwrite: true - name: Upload NuGet library DLL and XML to Artifacts if: ${{ inputs.nuget_build && matrix.cxx_compiler == 'msvc-2022' && matrix.config == 'Release' && env.BUILD_C_SHARP == 'true' }} - uses: actions/upload-artifact@v7 + uses: Wandalen/wretry.action@e68c23e6309f2871ca8ae4763e7629b9c258e1ea # v3.8.0 with: - name: DotNetDllXml - path: | - ./source/x64/Release/MRDotNet2.dll - ./source/x64/Release/MRDotNet2.xml - retention-days: 1 + action: actions/upload-artifact@v7 + attempt_limit: 3 + attempt_delay: 30000 # milliseconds + with: | + name: DotNetDllXml + path: | + ./source/x64/Release/MRDotNet2.dll + ./source/x64/Release/MRDotNet2.xml + retention-days: 1 + overwrite: true From 9023f2b2b5075152937d8a6f4e2f78a3c7cc677d Mon Sep 17 00:00:00 2001 From: Fedor Chelnokov Date: Fri, 24 Apr 2026 15:11:43 +0300 Subject: [PATCH 3/4] ci: retrigger workflow after adding Wandalen/wretry.action to repo allow-list Co-Authored-By: Claude Opus 4.7 (1M context) From 2de9f8d8e0b95eb33de178a0c12bb7fc20d9dea7 Mon Sep 17 00:00:00 2001 From: Fedor Chelnokov Date: Fri, 24 Apr 2026 15:18:01 +0300 Subject: [PATCH 4/4] ci: drop redundant "# Retry the upload..." comments The wrapped steps are self-documenting via the Wandalen/wretry.action usage. Co-Authored-By: Claude Opus 4.7 (1M context) --- .github/workflows/build-test-macos.yml | 1 - .github/workflows/build-test-windows.yml | 1 - 2 files changed, 2 deletions(-) diff --git a/.github/workflows/build-test-macos.yml b/.github/workflows/build-test-macos.yml index aa5062b2e922..cc6c6d435a87 100644 --- a/.github/workflows/build-test-macos.yml +++ b/.github/workflows/build-test-macos.yml @@ -255,7 +255,6 @@ jobs: --build c-examples-build \ --parallel $(sysctl -n hw.physicalcpu) - # Retry the upload on self-hosted-runner network blips. - name: Upload Macos Distribution if: ${{ inputs.upload_artifacts && matrix.config == 'Release' }} env: diff --git a/.github/workflows/build-test-windows.yml b/.github/workflows/build-test-windows.yml index 42eaf6d1a616..654123f88b01 100644 --- a/.github/workflows/build-test-windows.yml +++ b/.github/workflows/build-test-windows.yml @@ -333,7 +333,6 @@ jobs: if: ${{ inputs.upload_artifacts && matrix.cxx_compiler == 'msvc-2019' && matrix.build_system == 'CMake' && matrix.config == 'Release' && inputs.mrbind_c }} run: tar -a -c -f MeshLibC2Headers.zip ./source/MeshLibC2/include - # Retry the upload on self-hosted-runner network blips. - name: Upload Windows Binaries Archive if: ${{ inputs.upload_artifacts && matrix.cxx_compiler == 'msvc-2019' && matrix.build_system == 'CMake' }} uses: Wandalen/wretry.action@e68c23e6309f2871ca8ae4763e7629b9c258e1ea # v3.8.0