name: ci on: push: branches: - master pull_request: branches: - master jobs: test: strategy: fail-fast: false matrix: ruby: - "3.1" - "3.0" - "2.7" - "2.6" gemfile: - Gemfile - spec/support/Gemfile.rails6.1 - spec/support/Gemfile.rails6 - spec/support/Gemfile.rails5.2 bundler: - "2" exclude: - ruby: "2.6" gemfile: Gemfile bundler: "2" - ruby: "3.0" gemfile: spec/support/Gemfile.rails5.2 bundler: "2" - ruby: "3.0" gemfile: spec/support/Gemfile.rails6 bundler: "2" - ruby: "3.1" gemfile: spec/support/Gemfile.rails5.2 bundler: "2" - ruby: "3.1" gemfile: spec/support/Gemfile.rails6 bundler: "2" runs-on: ubuntu-latest env: BUNDLE_GEMFILE: ${{ github.workspace }}/${{ matrix.gemfile }} steps: - uses: actions/checkout@v2 - uses: ruby/setup-ruby@v1 with: bundler: ${{ matrix.bundler }} ruby-version: ${{ matrix.ruby }} bundler-cache: true # runs 'bundle install' and caches installed gems automatically - run: bundle exec rake