Skip to content

Split macos-15-intel bundler tests into four shards#9575

Merged
hsbt merged 3 commits into
masterfrom
bundler-intel-tag-groups
May 29, 2026
Merged

Split macos-15-intel bundler tests into four shards#9575
hsbt merged 3 commits into
masterfrom
bundler-intel-tag-groups

Conversation

@hsbt
Copy link
Copy Markdown
Member

@hsbt hsbt commented May 29, 2026

What was the end-user or developer problem that led to this PR?

The macos-15-intel runner added in #9573 ran the full bundler suite in around 40 minutes, which is too long for regression coverage.

What is your fix for the problem, implemented in this PR?

It now splits across four runners using the same example grouping that Windows already relies on, bringing each run down to roughly ten minutes.

Make sure the following tasks are checked

hsbt and others added 3 commits May 29, 2026 14:43
A single macos-15-intel runner took around 40 minutes. Reuse the
Windows tag groups to fan the run out to four runners, keeping each
under roughly ten minutes.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
These groups now drive the macOS Intel split as well as Windows, so the
"windows" naming no longer fits. Rename the module to Spec::Shards and
the tags to shard_a..d.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Matches the shard_a..d tag names so the matrix variable reads
consistently with what it selects.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 29, 2026 05:56
@hsbt hsbt enabled auto-merge May 29, 2026 05:56
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adjusts Bundler CI sharding so the macos-15-intel regression run is split across four shard jobs (matching the existing Windows shard grouping), reducing per-job runtime while preserving the existing sharded test selection mechanism in the spec suite.

Changes:

  • Rename/generalize the test file-to-tag mapping from Windows-specific groups to generic shard_ashard_d tags.
  • Update RSpec metadata/tag wiring to use Spec::Shards::EXAMPLE_MAPPINGS.
  • Update the Bundler GitHub Actions workflow to run Windows and macos-15-intel via shard-tagged runs and add the 4-way macos-15-intel matrix entries.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
spec/support/shards.rb Renames Windows-specific tag groups to generic shard tags while keeping the same file-to-tag allocations.
spec/spec_helper.rb Switches RSpec setup to load/include Spec::Shards and to derive shard metadata and warnings from shard tags.
.github/workflows/bundler.yml Adds four macos-15-intel shard jobs and renames Windows “group” matrix entries to “shard”, running shard-tagged test subsets for both.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@hsbt hsbt merged commit 9b77394 into master May 29, 2026
137 of 139 checks passed
@hsbt hsbt deleted the bundler-intel-tag-groups branch May 29, 2026 07:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants