Skip to content

Conversation

@s4na
Copy link

@s4na s4na commented Dec 1, 2025

Summary

  • Add GitHub Actions CI workflow to replace Travis CI (which is no longer running)
  • Test matrix: Ruby 3.0-3.3 × Rails 7.0-7.2
  • MySQL integration tests for Rails 7.1 and 7.2
  • Lint job to verify gem can be built
  • Add gemfiles for Rails 7.0, 7.1, and 7.2

Changes

  • .github/workflows/ci.yml - CI workflow configuration
  • gemfiles/rails_7.0.gemfile - Rails 7.0 test dependencies
  • gemfiles/rails_7.1.gemfile - Rails 7.1 test dependencies
  • gemfiles/rails_7.2.gemfile - Rails 7.2 test dependencies
  • test/test_helper.rb - Fix for Rails 7.1+ fixture_paths deprecation

Version Support Note

The CI tests Ruby 3.0+ with Rails 7.0+ because:

  1. Test infrastructure was modernized: The test/dummy Rails app requires Rails 7.x features
  2. Dependency constraints: The net-http gem in gemspec requires Ruby 2.6+

The original Travis CI config tested older versions (Ruby 2.0-2.6, Rails 3-6.1), but Travis CI has not been running and the test infrastructure has changed significantly. Restoring support for older Ruby/Rails versions would require additional work.

Test plan

  • All Ruby 3.x / Rails 7.x combinations pass
  • MySQL tests pass
  • Gem can be built

🤖 Generated with Claude Code

@s4na s4na force-pushed the add-ci-workflow branch 2 times, most recently from acfb825 to 848ba6d Compare December 1, 2025 04:30
Introduce automated CI testing for geokit-rails using GitHub Actions.

## Changes

### CI Workflow (.github/workflows/ci.yml)
- Matrix testing across Ruby 2.5-3.3 and Rails 3-7.2
- MySQL testing for Rails 7.1/7.2
- Lint job to verify gem builds correctly

### Test Infrastructure
- Add gemfiles/ for Rails 7.x version-specific dependencies
- Update test/database.yml to support CI environment variables
- Update test/boot.rb to parse ERB in database.yml
- Fix test/test_helper.rb for Rails 7.1+ (fixture_paths)
- Fix test/ip_geocode_lookup_test.rb missing mock expectations

### Compatibility Matrix
- Ruby 2.5-2.7: Rails 3, 4, 5, 6.0, 6.1
- Ruby 2.7-3.0: Rails 7.0
- Ruby 3.0-3.3: Rails 7.1
- Ruby 3.1-3.3: Rails 7.2

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
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.

1 participant