name: Tests on: push: branches: [main] pull_request: branches: [main] schedule: - cron: '45 */6 * * *' jobs: test: runs-on: ubuntu-latest strategy: matrix: ruby-version: - "2.5" - "2.6" - "2.7" - "3.0" gemfile: - "gemfiles/activerecord-5.0.Gemfile" - "gemfiles/activerecord-5.1.Gemfile" - "gemfiles/activerecord-5.2.Gemfile" - "gemfiles/activerecord-6.0.Gemfile" - "gemfiles/activerecord-6.1.Gemfile" exclude: # Ruby 3 is not supported for ActiveRecord < 6.1 - ruby-version: "3.0" gemfile: "gemfiles/activerecord-5.0.Gemfile" - ruby-version: "3.0" gemfile: "gemfiles/activerecord-5.1.Gemfile" - ruby-version: "3.0" gemfile: "gemfiles/activerecord-5.2.Gemfile" - ruby-version: "3.0" gemfile: "gemfiles/activerecord-6.0.Gemfile" steps: - uses: actions/checkout@v2 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby-version }} - name: Install gems run: bundle install --gemfile ${{ matrix.gemfile }} - name: Run rubocop run: bundle exec rake rubocop - name: Run tests run: bundle exec --gemfile ${{ matrix.gemfile }} rspec