ci(desktop): wrap desktop build in retry to survive vlcDownload flakes
The Windows leg of the Test/Build workflow has been intermittently failing with SocketTimeoutException inside :desktopApp:vlcDownload, even after the in-build retry budget (retries(4) + 5min readTimeout in desktopApp/build.gradle.kts) and the actions/cache of ~/.gradle/vlcSetup. When get.videolan.org is unreachable for long enough to exhaust the inner retries, the whole job dies on a cache miss. Wrap the Test+Build step in nick-fields/retry@v4 (max_attempts: 2, timeout_minutes: 45) so one outer retry can ride out a sustained videolan.org outage. This mirrors the proven pattern already used in create-release.yml for the release artifact build.
This commit is contained in:
@@ -94,8 +94,19 @@ jobs:
|
|||||||
restore-keys: |
|
restore-keys: |
|
||||||
vlcsetup-${{ runner.os }}-
|
vlcsetup-${{ runner.os }}-
|
||||||
|
|
||||||
|
# Wrap the Gradle invocation in nick-fields/retry so a transient
|
||||||
|
# SocketTimeoutException inside vlcDownload / upxDownload (the de.undercouch
|
||||||
|
# Download tasks talking to get.videolan.org) doesn't sink the whole job.
|
||||||
|
# The in-build retry budget (retries(4) + 5min readTimeout in
|
||||||
|
# desktopApp/build.gradle.kts) handles short blips inside one task; this
|
||||||
|
# outer retry handles the case where get.videolan.org is unreachable for
|
||||||
|
# long enough to exhaust that budget — matches the release workflow.
|
||||||
- name: Test + Build Desktop (gradle)
|
- name: Test + Build Desktop (gradle)
|
||||||
run: ./gradlew :quartz:jvmTest :commons:jvmTest :nestsClient:jvmTest :cli:test :desktopApp:test :desktopApp:${{ matrix.desktop-task }}
|
uses: nick-fields/retry@ad984534de44a9489a53aefd81eb77f87c70dc60 # v4.0.0
|
||||||
|
with:
|
||||||
|
max_attempts: 2
|
||||||
|
timeout_minutes: 45
|
||||||
|
command: ./gradlew :quartz:jvmTest :commons:jvmTest :nestsClient:jvmTest :cli:test :desktopApp:test :desktopApp:${{ matrix.desktop-task }}
|
||||||
|
|
||||||
# jpackage pins libicu to the build host's version (libicu74 on
|
# jpackage pins libicu to the build host's version (libicu74 on
|
||||||
# ubuntu-24.04). Rewrite the .deb so testers on other Debian/Ubuntu
|
# ubuntu-24.04). Rewrite the .deb so testers on other Debian/Ubuntu
|
||||||
|
|||||||
Reference in New Issue
Block a user