GitHub Actions removals · checked

ubuntu-22.04 runner deprecated: brownouts 23 Mar to 13 Apr, removed 17 Apr 2027

Ubuntu 22.04 runner image: removed 17 Apr 2027, in 190 days. Before that, jobs fail during brownouts on 23 and 30 Mar, 6 and 13 Apr 2027, 14:00 to 24:00 UTC; the next is 23 Mar, in 165 days. Jobs that ask for ubuntu-22.04 or ubuntu-22.04-arm are terminated with an error, and they fail during each brownout before then. While the image is deprecated, queues can be longer at peak hours. The fix: Change runs-on to ubuntu-24.04 or ubuntu-26.04; ubuntu-22.04-arm to ubuntu-24.04-arm or ubuntu-26.04-arm. Check your workflows now, with nothing to install: grep -rnE "ubuntu-22\.04|ubuntu-22\.04-arm" .github/workflows

$ grep -rnE "ubuntu-22\.04|ubuntu-22\.04-arm" .github/workflows

Run it from the repository root; it needs nothing installed and sends nothing anywhere. It finds each name as written in your workflow files; a value set in another file and passed in (a matrix from JSON, a reusable workflow's input) needs a look of its own. The fix is in the first paragraph above. The dates come from this data.

The facts

What
Ubuntu 22.04 runner image
Matches
Runner labels ubuntu-22.04, ubuntu-22.04-arm, in runs-on or a matrix
Effect
Breaks a job
Announced
16 June 2026
Deprecated from
17 September 2026
Date
17 Apr 2027removed 17 Apr 2027, in 190 days
After the date
Jobs that ask for ubuntu-22.04 or ubuntu-22.04-arm are terminated with an error, and they fail during each brownout before then. While the image is deprecated, queues can be longer at peak hours.
The fix
Change runs-on to ubuntu-24.04 or ubuntu-26.04; ubuntu-22.04-arm to ubuntu-24.04-arm or ubuntu-26.04-arm.
Replace
ubuntu-22.04 → ubuntu-24.04ubuntu-22.04-arm → ubuntu-24.04-arm

Brownouts: the days jobs fail before the removal

During each window GitHub fails every job that asks for it, to make the removal noticed. A scheduled run that lands in one fails too.

DayJobs fail (UTC)Status
14:00 to 24:00 UTCahead
14:00 to 24:00 UTCahead
14:00 to 24:00 UTCahead
14:00 to 24:00 UTCahead

Notes

  • GitHub's notice writes each brownout as, for example, "March 23, 14:00 UTC - March 23, 00:00 UTC". This page reads that as ending at 00:00 UTC the next day, as the macOS 14 notice in the same format spells out.
  • Azure DevOps retires the same image on the same dates.

Sources

An email before each brownout, for the repos you watch, is not built.

It would re-read your workflows every day and email you a week and a day before each brownout or removal that would hit them (for Ubuntu 22.04 runner image: 23 and 30 Mar, 6 and 13 Apr 2027), with no change to your repo. agentcheck's free hourly watch covers MCP servers only today. If you would pay for this one, say so with one click. The click is counted; nothing else is sent or stored.

Other GitHub Actions removals

Every removal, by date

actions-eol is a free tool from agentcheck, which runs scheduled checks of your endpoints and alerts you when an answer changes. Dates come from GitHub's own pages, read on the day shown; github.com only, since GitHub Enterprise Server keeps its own schedule.