name: Ruby specs on: [push, pull_request] jobs: build: name: Ruby specs runs-on: ${{ matrix.os }} continue-on-error: ${{ endsWith(matrix.ruby, 'head') || matrix.ruby == 'debug' || matrix.experimental }} strategy: fail-fast: false matrix: os: [ubuntu-latest] ruby: [ 2.4, 2.5, 2.6, 2.7 ] gemfile: [ "gemfiles/Gemfile-rails.5.2.x", "gemfiles/Gemfile-rails.6.0.x" ] exclude: - ruby: "2.4" gemfile: gemfiles/Gemfile-rails.6.0.x experimental: [false] include: - ruby: 2.7 os: ubuntu-latest gemfile: gemfiles/Gemfile-rails-edge experimental: true env: BUNDLE_GEMFILE: ${{ matrix.gemfile }} steps: - uses: actions/checkout@v2 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true rubygems: ${{ matrix.ruby < '2.6' && 'default' || 'latest' }} - name: Ruby specs run: bundle exec rake test