From fc1002778076582425af22ab91266b392d94b159 Mon Sep 17 00:00:00 2001 From: bitsandfoxes Date: Sun, 25 Oct 2026 16:36:07 +0100 Subject: [PATCH] Cap job run time with timeout-minutes --- .github/workflows/build.yml | 1 + .github/workflows/ci.yml | 3 +++ .github/workflows/create-unity-matrix.yml | 1 + .github/workflows/test-build-android.yml | 1 + .github/workflows/test-build-ios.yml | 1 + .github/workflows/test-build-linux.yml | 1 + .github/workflows/test-build-macos.yml | 1 + .github/workflows/test-build-windows-mono.yml | 1 + .github/workflows/test-build-windows-x86.yml | 1 + .github/workflows/test-build-windows.yml | 1 + .github/workflows/test-compile-ios.yml | 1 + .github/workflows/test-create.yml | 1 + .github/workflows/test-run-android.yml | 1 + .github/workflows/test-run-desktop.yml | 1 + .github/workflows/test-run-ios.yml | 1 + .github/workflows/test-run-webgl.yml | 1 + 16 files changed, 18 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 457777864..3e09c91ec 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -21,6 +21,7 @@ defaults: jobs: build: + timeout-minutes: 90 name: Build - ${{ inputs.unity-version }} runs-on: ubuntu-latest permissions: diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7a56cf6cc..476c38463 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -74,6 +74,7 @@ jobs: unity-version: ${{ matrix.unity-version }} package-validation: + timeout-minutes: 10 needs: build-unity-sdk if: ${{ !cancelled() }} name: UPM Package validation @@ -134,6 +135,7 @@ jobs: # A Linux, docker-based build to prepare a WebGL player. The tests run in `test-run-webgl`. test-build-webgl: + timeout-minutes: 120 name: Build ${{ matrix.platform }} ${{ matrix.unity-version }} Test if: ${{ !startsWith(github.ref, 'refs/heads/release/') }} needs: [test-create, create-unity-matrix] @@ -563,6 +565,7 @@ jobs: backend: ${{ matrix.backend }} build-size-summary: + timeout-minutes: 5 name: Build Size runs-on: ubuntu-latest if: ${{ !startsWith(github.ref, 'refs/heads/release/') }} diff --git a/.github/workflows/create-unity-matrix.yml b/.github/workflows/create-unity-matrix.yml index 2ad5eb93d..8fdbf7ae3 100644 --- a/.github/workflows/create-unity-matrix.yml +++ b/.github/workflows/create-unity-matrix.yml @@ -25,6 +25,7 @@ env: jobs: create-unity-matrix: + timeout-minutes: 5 runs-on: ubuntu-latest outputs: unity-matrix: ${{ steps.set-matrix.outputs.matrix }} diff --git a/.github/workflows/test-build-android.yml b/.github/workflows/test-build-android.yml index 8a1bd24f6..03641763d 100644 --- a/.github/workflows/test-build-android.yml +++ b/.github/workflows/test-build-android.yml @@ -19,6 +19,7 @@ defaults: jobs: build: + timeout-minutes: 120 name: ${{ inputs.unity-version }} runs-on: ubuntu-latest-4-cores env: diff --git a/.github/workflows/test-build-ios.yml b/.github/workflows/test-build-ios.yml index 7e8b0896e..890cc16ae 100644 --- a/.github/workflows/test-build-ios.yml +++ b/.github/workflows/test-build-ios.yml @@ -19,6 +19,7 @@ defaults: jobs: build: + timeout-minutes: 120 name: ${{ inputs.unity-version }} runs-on: ubuntu-latest strategy: diff --git a/.github/workflows/test-build-linux.yml b/.github/workflows/test-build-linux.yml index 4b2ec5269..3d1040e10 100644 --- a/.github/workflows/test-build-linux.yml +++ b/.github/workflows/test-build-linux.yml @@ -19,6 +19,7 @@ defaults: jobs: build: + timeout-minutes: 120 name: Linux ${{ inputs.unity-version }} runs-on: ubuntu-latest env: diff --git a/.github/workflows/test-build-macos.yml b/.github/workflows/test-build-macos.yml index c51195da9..f00510685 100644 --- a/.github/workflows/test-build-macos.yml +++ b/.github/workflows/test-build-macos.yml @@ -19,6 +19,7 @@ defaults: jobs: build: + timeout-minutes: 120 name: macOS ${{ inputs.unity-version }} runs-on: macos-latest env: diff --git a/.github/workflows/test-build-windows-mono.yml b/.github/workflows/test-build-windows-mono.yml index dd446274d..ad14e51fb 100644 --- a/.github/workflows/test-build-windows-mono.yml +++ b/.github/workflows/test-build-windows-mono.yml @@ -19,6 +19,7 @@ defaults: jobs: build: + timeout-minutes: 120 name: Windows Mono ${{ inputs.unity-version }} runs-on: windows-latest env: diff --git a/.github/workflows/test-build-windows-x86.yml b/.github/workflows/test-build-windows-x86.yml index e63d0daac..e34266b3e 100644 --- a/.github/workflows/test-build-windows-x86.yml +++ b/.github/workflows/test-build-windows-x86.yml @@ -19,6 +19,7 @@ defaults: jobs: build: + timeout-minutes: 120 name: Windows x86 ${{ inputs.unity-version }} runs-on: windows-latest env: diff --git a/.github/workflows/test-build-windows.yml b/.github/workflows/test-build-windows.yml index a773d233a..bc761b8ad 100644 --- a/.github/workflows/test-build-windows.yml +++ b/.github/workflows/test-build-windows.yml @@ -19,6 +19,7 @@ defaults: jobs: build: + timeout-minutes: 120 name: Windows ${{ inputs.unity-version }} runs-on: windows-latest env: diff --git a/.github/workflows/test-compile-ios.yml b/.github/workflows/test-compile-ios.yml index d6368ecc3..84a6d347b 100644 --- a/.github/workflows/test-compile-ios.yml +++ b/.github/workflows/test-compile-ios.yml @@ -15,6 +15,7 @@ defaults: jobs: compile: + timeout-minutes: 45 name: ${{ inputs.unity-version }} ${{ inputs.init-type }} runs-on: 'macos-15' # Pinning to get the oldest, supported version of iOS simulator env: diff --git a/.github/workflows/test-create.yml b/.github/workflows/test-create.yml index 0fb666ec9..332395462 100644 --- a/.github/workflows/test-create.yml +++ b/.github/workflows/test-create.yml @@ -15,6 +15,7 @@ defaults: jobs: create: + timeout-minutes: 40 name: ${{ inputs.unity-version }} runs-on: ubuntu-latest env: diff --git a/.github/workflows/test-run-android.yml b/.github/workflows/test-run-android.yml index 630484d23..f4693f80d 100644 --- a/.github/workflows/test-run-android.yml +++ b/.github/workflows/test-run-android.yml @@ -23,6 +23,7 @@ defaults: jobs: run: + timeout-minutes: 35 name: ${{ inputs.unity-version }} ${{ inputs.api-level }} ${{ inputs.init-type }} # Unity 6000.x builds ARM64 so we run Redroid (containerized arm64 Android) on an # arm64 Linux runner. diff --git a/.github/workflows/test-run-desktop.yml b/.github/workflows/test-run-desktop.yml index 4cf4f7e24..9d828a950 100644 --- a/.github/workflows/test-run-desktop.yml +++ b/.github/workflows/test-run-desktop.yml @@ -36,6 +36,7 @@ defaults: jobs: run: + timeout-minutes: 25 name: ${{ inputs.platform }}${{ inputs.architecture && format(' {0}', inputs.architecture) || '' }}${{ inputs.scripting && format(' {0}', inputs.scripting) || '' }}${{ inputs.backend && format(' ({0})', inputs.backend) || '' }} ${{ inputs.unity-version }} runs-on: ${{ inputs.platform == 'linux' && 'ubuntu-latest' || inputs.platform == 'macos' && 'macos-latest' || 'windows-latest' }} env: diff --git a/.github/workflows/test-run-ios.yml b/.github/workflows/test-run-ios.yml index 035dcdc33..4e7e4d294 100644 --- a/.github/workflows/test-run-ios.yml +++ b/.github/workflows/test-run-ios.yml @@ -28,6 +28,7 @@ defaults: jobs: run: + timeout-minutes: 25 name: ${{ inputs.unity-version }} ${{ inputs.ios-version }} ${{ inputs.init-type }} runs-on: macos-15 # Pinning to get the oldest, supported version of iOS simulator # Map the job outputs to step outputs diff --git a/.github/workflows/test-run-webgl.yml b/.github/workflows/test-run-webgl.yml index cff15cb81..15f26f0b3 100644 --- a/.github/workflows/test-run-webgl.yml +++ b/.github/workflows/test-run-webgl.yml @@ -17,6 +17,7 @@ defaults: jobs: run: + timeout-minutes: 25 name: WebGL ${{ inputs.unity-version }} runs-on: ubuntu-latest env: