Skip to content

Commit 543485e

Browse files
committed
Run the CI test matrix below Ruby 3.2 on ubuntu-24.04
## Motivation and Context `ubuntu-latest` moved to ubuntu-26.04 on 2026-11-01, and `ruby/setup-ruby` has builds of CRuby 3.2 and newer only for that image, since older CRuby versions do not compile on it. The test matrix still covers 2.7.0 (the minimum supported version), 3.0, and 3.1, so the "Test Ruby 2.7.0" job of main a93fbf8 failed with "Unavailable version 2.7.0 for ruby on ubuntu-26.04" before running anything, and fail-fast cancelled the other Ruby jobs. Each matrix entry now names its runner: 2.7.0, 3.0, and 3.1 run on ubuntu-24.04, where ruby-builder still provides them, and 3.2 and newer and head keep following `ubuntu-latest`, as the RuboCop project did for its own matrix. RuboCop, YARD, and the conformance workflow run on Ruby 4.0 and are unchanged. ## How Has This Been Tested? The workflow file parses as YAML with the Ruby versions and steps unchanged; the pull request's own CI run shows "Test Ruby 2.7.0" running again. ## Breaking Changes None.
1 parent a93fbf8 commit 543485e

1 file changed

Lines changed: 10 additions & 9 deletions

File tree

‎.github/workflows/ci.yml‎

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,21 @@ on: [push, pull_request]
33

44
jobs:
55
test:
6-
runs-on: ubuntu-latest
6+
# ruby/setup-ruby has no CRuby below 3.2 for ubuntu-26.04, which ubuntu-latest points to, so those run on ubuntu-24.04.
7+
runs-on: ${{ matrix.entry.os }}
78
permissions:
89
contents: read
910
strategy:
1011
matrix:
1112
entry:
12-
- { ruby: '2.7.0', allowed-failure: false } # Minimum supported Ruby version.
13-
- { ruby: '3.0', allowed-failure: false }
14-
- { ruby: '3.1', allowed-failure: false }
15-
- { ruby: '3.2', allowed-failure: false }
16-
- { ruby: '3.3', allowed-failure: false }
17-
- { ruby: '3.4', allowed-failure: false }
18-
- { ruby: '4.0', allowed-failure: false }
19-
- { ruby: 'head', allowed-failure: true }
13+
- { ruby: '2.7.0', os: ubuntu-24.04, allowed-failure: false } # Minimum supported Ruby version.
14+
- { ruby: '3.0', os: ubuntu-24.04, allowed-failure: false }
15+
- { ruby: '3.1', os: ubuntu-24.04, allowed-failure: false }
16+
- { ruby: '3.2', os: ubuntu-latest, allowed-failure: false }
17+
- { ruby: '3.3', os: ubuntu-latest, allowed-failure: false }
18+
- { ruby: '3.4', os: ubuntu-latest, allowed-failure: false }
19+
- { ruby: '4.0', os: ubuntu-latest, allowed-failure: false }
20+
- { ruby: 'head', os: ubuntu-latest, allowed-failure: true }
2021
name: Test Ruby ${{ matrix.entry.ruby }}
2122
steps:
2223
- uses: actions/checkout@v7

0 commit comments

Comments
 (0)