From 328c85f3f1c9f1f2a074e27db4592f2ea0e5e64c Mon Sep 17 00:00:00 2001 From: Tom Whitwell Date: Thu, 29 Oct 2026 13:15:33 +0000 Subject: [PATCH 1/2] Add a weekly CI digest There is no view of how often CI fails or slows down over time, so this runs a weekly summary by calling the shared workflow in forms-deploy. It is a dry run for now: the digest goes to the job summary, not Slack. --- .github/workflows/ci-digest.yml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 .github/workflows/ci-digest.yml diff --git a/.github/workflows/ci-digest.yml b/.github/workflows/ci-digest.yml new file mode 100644 index 0000000000..9398cca635 --- /dev/null +++ b/.github/workflows/ci-digest.yml @@ -0,0 +1,24 @@ +name: "CI digest" + +# Weekly summary of how often this repo's workflows fail and how long they take, +# compared with the previous 12 weeks. The logic is in forms-deploy. +# +# For now it is a dry run: the digest goes to the job summary and nothing is +# posted to Slack. See reusable-ci-digest.yml in forms-deploy for how to go live. + +on: + schedule: + - cron: "12 8 * * 1" # Mondays, around 09:00 UK time + workflow_dispatch: + +permissions: {} + +jobs: + digest: + name: "CI digest" + permissions: + actions: read + contents: read + uses: govuk-forms/forms-deploy/.github/workflows/reusable-ci-digest.yml@main + secrets: + SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_GOVUK_FORMS_DEPLOYMENTS }} From 14df8bb4c66f4c42bd1136b873dbf22964775bcd Mon Sep 17 00:00:00 2001 From: Tom Whitwell Date: Tue, 20 Oct 2026 13:41:07 +0100 Subject: [PATCH 2/2] Set timeouts on workflow jobs Jobs default to a six hour timeout, so a hung job ties up a runner and delays the merge queue. Limits are well above normal run times. --- .github/workflows/terraform.yml | 1 + .github/workflows/test.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/terraform.yml b/.github/workflows/terraform.yml index 8c726b2695..735d8df646 100644 --- a/.github/workflows/terraform.yml +++ b/.github/workflows/terraform.yml @@ -9,6 +9,7 @@ on: jobs: terraform: runs-on: ubuntu-latest + timeout-minutes: 15 steps: - name: Checkout code uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 1c57db2eb6..49c4ba5ee0 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -19,6 +19,7 @@ permissions: jobs: build_and_test: runs-on: ubuntu-latest + timeout-minutes: 20 services: postgres: image: postgres:16-alpine