From c457ce6a5e81417c99069ed0e73cd63260d4487b Mon Sep 17 00:00:00 2001 From: Ramon Smits Date: Wed, 9 Sep 2026 16:05:56 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=91=B7=20Cap=20CI=20test=20jobs=20at=2030?= =?UTF-8?q?=20minutes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The build job had no timeout, so a job whose runner was lost or whose test host hung on infrastructure kept the runner for the 6 hour default until the next push cancelled the run. Across the last 60 runs no healthy job took longer than 18 minutes. --- .github/workflows/ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index bfd9289969..56be5980d4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,6 +18,9 @@ jobs: build: name: ${{ matrix.os-name }}-${{ matrix.test-category }} runs-on: ${{ matrix.os }} + # The slowest healthy job finishes in under 18 minutes. Anything still running at 30 has lost its + # runner or hung on infrastructure, and without a cap it would occupy the runner for 6 hours. + timeout-minutes: 30 strategy: matrix: os: [windows-latest, ubuntu-latest]