Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .github/workflows/draft-pdf.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
on:
# Feature branches get the pull_request run below; building the draft again
# on every branch push duplicated it.
push:
branches: [main]
paths:
- paper.md
- paper.bib
Expand All @@ -18,6 +21,7 @@ jobs:
paper:
runs-on: ubuntu-latest
name: Draft PDF
timeout-minutes: 15
steps:
- uses: actions/checkout@v4
- uses: openjournals/openjournals-draft-action@master
Expand Down
8 changes: 8 additions & 0 deletions .github/workflows/pr_code_changes.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ jobs:
check-changelog:
name: Check changelog fragment
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v6
with:
Expand All @@ -32,6 +33,7 @@ jobs:
run: .github/check-changelog.sh
Lint:
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v6
- name: Install ruff
Expand All @@ -44,6 +46,7 @@ jobs:
run: ruff check .
Mypy:
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- uses: actions/checkout@v6
- name: Install uv
Expand All @@ -61,6 +64,7 @@ jobs:
Python-Compat:
name: Install + smoke-import (py${{ matrix.python-version }})
runs-on: ubuntu-latest
timeout-minutes: 15
strategy:
fail-fast: false
matrix:
Expand All @@ -85,6 +89,7 @@ jobs:
# Private manifest credentials are available only to trusted repository PRs.
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository
runs-on: ubuntu-latest
timeout-minutes: 30
env:
POLICYENGINE_SKIP_COUNTRY_IMPORTS: "1"
steps:
Expand Down Expand Up @@ -136,6 +141,9 @@ jobs:
run: policyengine bundle verify --country us --country uk --packages-only --json
Test:
runs-on: ubuntu-latest
# Slowest observed 2026-10-06..08: 28 minutes. Fail a hung job instead of
# holding a shared org runner for the 6-hour default.
timeout-minutes: 60
strategy:
fail-fast: false
matrix:
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/pr_docs_changes.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ jobs:
Test:
runs-on: ubuntu-latest
name: Test documentation builds
timeout-minutes: 30
steps:
- name: Checkout repo
uses: actions/checkout@v6
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/push.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ jobs:
Lint:
if: github.event.head_commit.message != 'Update package version'
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v6
- name: Install ruff
Expand All @@ -40,6 +41,8 @@ jobs:
Test:
if: github.event.head_commit.message != 'Update package version'
runs-on: ubuntu-latest
# Slowest observed 2026-10-06..08: 26 minutes.
timeout-minutes: 60
strategy:
fail-fast: false
matrix:
Expand Down
1 change: 1 addition & 0 deletions changelog.d/ci-capacity-ci-hygiene.changed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Give every lint, test, docs and paper CI job a timeout, so a hung job frees its shared GitHub Actions runner instead of holding it for six hours.
Loading