Skip to content
This repository was archived by the owner on Aug 4, 2026. It is now read-only.

ci: bound every unbounded CI job with timeout-minutes - #77

Merged
rubenvdlinde merged 1 commit into
developmentfrom
ci/bound-job-timeouts
Aug 3, 2026
Merged

ci: bound every unbounded CI job with timeout-minutes#77
rubenvdlinde merged 1 commit into
developmentfrom
ci/bound-job-timeouts

Conversation

@rubenvdlinde

Copy link
Copy Markdown
Contributor

What

Adds timeout-minutes to every CI job in this repo that was running unbounded.

Why

A job without timeout-minutes inherits GitHub's 360-minute default. A runner that hangs — a wedged npm ci, a network stall, a container that never starts — burns six hours of Actions minutes before it is reaped, and the PR sits pending the whole time.

How the values were picked

Bounds come from observed run durations across the fleet, not from guesses, and are left deliberately loose. A timeout that fires under normal contention is worse than no timeout, because it converts a slow run into a phantom defect.

job observed bound
pull-request-lint-check.yamllint-check n=176, median 0.6 min, max 1.4 min 15

Scope

Additions only, workflow files only. Job sets are unchanged — every touched file was re-parsed with yaml.safe_load and its job list compared against the base commit.

Jobs that only call a reusable workflow (job-level uses:) are intentionally untouched: they inherit their bound from the called workflow and GitHub does not honour timeout-minutes on them.

Jobs without timeout-minutes fall back to GitHub's 360-minute default, so
a hung runner burns six hours of Actions minutes before it is reaped.

Bounds are derived from observed run durations and left deliberately loose:
a timeout that fires under normal contention is worse than no timeout,
because it turns a slow run into a phantom defect.

Jobs that only call a reusable workflow (job-level `uses:`) are untouched --
they inherit their bound from the called workflow.
@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/deskdesk @ ac332a4

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
composer ✅ 100/100
npm ✅ 651/651
PHPUnit
Newman
Playwright ⏭️

Coverage: 0% (0/3 statements)


Quality workflow — 2026-08-03 12:59 UTC

Download the full PDF report from the workflow artifacts.

@rubenvdlinde
rubenvdlinde merged commit 72f5668 into development Aug 3, 2026
28 of 30 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant