name: RSpec on: [push, pull_request] jobs: rspec: strategy: fail-fast: false matrix: os: [ubuntu-latest] ruby: [2.7] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v2 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - name: RSpec run run: | bash -c " bundle exec rspec [[ $? -ne 2 ]] " rspec-mri: needs: rspec strategy: fail-fast: false matrix: os: [ ubuntu-latest ] ruby: [2.5, 2.6, '3.0', head] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v2 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - run: bundle exec rspec rspec-jruby: needs: rspec strategy: fail-fast: false matrix: os: [ ubuntu-latest ] ruby: [ jruby, jruby-head] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v2 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - run: JRUBY_OPTS="--debug" bundle exec rspec rspec-truffleruby: needs: rspec strategy: fail-fast: false matrix: os: [ ubuntu-latest ] ruby: [truffleruby] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v2 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - run: bundle exec rspec