name: PR checks on: pull_request: types: [opened, reopened, synchronize, ready_for_review] concurrency: group: '${{ github.workflow }} @ ${{ github.event.pull_request.head.label || github.head_ref || github.ref }}' cancel-in-progress: true jobs: rspec-legacy: name: RSpec with legacy ruby ${{matrix.ruby}} runs-on: ubuntu-latest env: BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/ruby_${{matrix.ruby}}.gemfile strategy: fail-fast: false matrix: ruby: ['2.4', '2.5', '2.6', '2.7'] steps: - uses: actions/checkout@v4 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{matrix.ruby}} bundler-cache: true - name: Test with RSpec run: bundle exec rspec rspec: name: RSpec with ruby ${{matrix.ruby}} runs-on: ubuntu-latest needs: rubocop strategy: fail-fast: false matrix: ruby: ['3.0', '3.1', '3.2'] steps: - uses: actions/checkout@v4 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{matrix.ruby}} bundler-cache: true - name: Test with RSpec run: bundle exec rspec rubocop: name: RuboCop runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: ruby/setup-ruby@v1 with: ruby-version: 3.1.3 bundler-cache: true - name: Check with RuboCop run: bundle exec rubocop