← All docs

Ruby on Rails

Ruby

Rails Active Record migrations are Ruby files. Extract SQL with schema statements.

Auto-Detection

MigrationPilot auto-detects Rails via Gemfile with activerecord or the db/migrate/ directory.

Migration Path

Default migration file pattern:

db/migrate/**/*.sql

Setup

# Generate raw SQL from a Rails migration
bundle exec rails db:migrate:status

# For raw SQL analysis, use structure.sql format:
# In config/application.rb:
#   config.active_record.schema_format = :sql

# Then analyze the generated SQL:
npx migrationpilot analyze db/structure.sql

GitHub Action

Add to your CI workflow:

- name: Check Rails migrations
  run: |
    bundle exec rails db:migrate:status
    npx migrationpilot analyze db/structure.sql --fail-on critical

Configuration

Add a config file to set the default migration path:

# .migrationpilotrc.yml
migrationPath: "db/migrate/**/*.sql"
failOn: critical