♻️ Switch to setup-ruby-flash in coverage workflow#4
Conversation
pboling
commented
Feb 7, 2026
- https://github.com/appraisal-rb/setup-ruby-flash
There was a problem hiding this comment.
Pull request overview
Updates the CI coverage workflow to use appraisal-rb/setup-ruby-flash for Ruby/RubyGems/Bundler setup, and documents the change in the changelog.
Changes:
- Switch
.github/workflows/coverage.ymlfromruby/setup-ruby@v1toappraisal-rb/setup-ruby-flash. - Adjust the Appraisal install command to use
bundle install --gem-manager=ore. - Add/adjust entries in
CHANGELOG.mddescribing CI/workflow changes.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| CHANGELOG.md | Adds Unreleased notes about the workflow change and CI coverage/testing behavior. |
| .github/workflows/coverage.yml | Replaces Ruby setup action and modifies the dependency install invocation under Appraisal. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
.github/workflows/coverage.yml
Outdated
| - name: Appraisal for ${{ matrix.appraisal }} | ||
| run: bundle exec appraisal ${{ matrix.appraisal }} bundle | ||
| run: bundle exec appraisal ${{ matrix.appraisal }} bundle install --gem-manager=ore | ||
| - name: Tests for ${{ matrix.ruby }}@current via ${{ matrix.exec_cmd }} | ||
| run: bundle exec appraisal ${{ matrix.appraisal }} bundle exec ${{ matrix.exec_cmd }} |
There was a problem hiding this comment.
The previous workflow explicitly ran bundle before any bundle exec appraisal ... calls (to ensure the bundle for BUNDLE_GEMFILE=Appraisal.root.gemfile is installed). In this version, the first bundle invocation is inside bundle exec ..., so it’s unclear where the initial gem install happens. If setup-ruby-flash isn’t performing a bundle install for the root/Appraisal bundle, the subsequent bundle exec appraisal ... steps will fail on a clean runner. Consider adding back an explicit install step (potentially using --gem-manager=ore) or otherwise making the install behavior explicit.
| - name: Setup Ruby & Gems via rv & ore | ||
| uses: appraisal-rb/setup-ruby-flash@main | ||
| with: | ||
| ruby-version: "${{ matrix.ruby }}" | ||
| rubygems: "${{ matrix.rubygems }}" | ||
| bundler: "${{ matrix.bundler }}" | ||
| bundler-cache: false | ||
| ore-install: true |
There was a problem hiding this comment.
uses: appraisal-rb/setup-ruby-flash@main is an unpinned ref, so the workflow can change behavior (or break) without any change in this repo. Prefer pinning to a release tag or commit SHA to reduce supply-chain risk and improve reproducibility.
|
|
||
| - Updated documentation on hostile takeover of RubyGems | ||
| - https://dev.to/galtzo/hostile-takeover-of-rubygems-my-thoughts-5hlo | ||
| - switch to [setup-ruby-flash](https://github.com/appraisal-rb/setup-ruby-flash) in some workflows |
There was a problem hiding this comment.
Changelog entries under "Changed" are capitalized elsewhere (e.g., "Updated ..."), but this new entry starts with lowercase "switch". Consider capitalizing it for consistency, and clarify wording: this PR only updates the coverage workflow, so "some workflows" may be misleading.
| - switch to [setup-ruby-flash](https://github.com/appraisal-rb/setup-ruby-flash) in some workflows | |
| - Updated coverage workflow to use [setup-ruby-flash](https://github.com/appraisal-rb/setup-ruby-flash) |
| - RSpec tests actually run in CI, and report coverage | ||
|
|
There was a problem hiding this comment.
This new "Fixed" changelog entry claims RSpec tests now run in CI and report coverage, but the code changes in this PR are limited to swapping the Ruby setup action / install command in the coverage workflow (the test command itself is unchanged). Please adjust the changelog entry to describe the actual fix introduced here, or move it to the PR that made RSpec/coverage start working.
- appraisal2 v3.0.2 - rspec-pending_for v0.1.20 - kettle-test v1.0.10