From 20c2a3eb00674bdc64de65850555473a1fe568f0 Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Wed, 30 Dec 2020 11:43:11 +0100 Subject: [PATCH 1/4] Use bundler-cache: true to automatically cache installed gems --- .github/workflows/test.yml | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 40ff27fa3..20a5de79c 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -55,21 +55,16 @@ jobs: with: fetch-depth: '20' - - name: Setup Ruby - uses: ruby/setup-ruby@v1 - with: - ruby-version: ${{ matrix.ruby }} - - - name: Install bundler - run: gem install bundler - # https://github.com/CanCanCommunity/cancancan/pull/669#issuecomment-748019539 - name: Nokogiri support for Truffleruby run: sudo apt-get -yqq install libxml2-dev libxslt-dev if: ${{ matrix.ruby == 'truffleruby' }} - - name: Install gems - run: bundle install --jobs 2 + - name: Setup Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: ${{ matrix.ruby }} + bundler-cache: true - name: Run linter run: bundle exec rubocop From e2bf8d525d470ca53002cc4f6d0a832b6cce751a Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Wed, 30 Dec 2020 11:46:57 +0100 Subject: [PATCH 2/4] Trigger on both push and PRs --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 20a5de79c..fb1732fa0 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,5 +1,5 @@ name: Test & lint -on: [push] +on: [push, pull_request] env: RAILS_ENV: test From 0ac649426170acca5fa836cb6afb2fbaf32c8b97 Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Wed, 30 Dec 2020 11:56:57 +0100 Subject: [PATCH 3/4] Exclude vendor/ for RuboCop * Otherwise it would look at, e.g., vendor/bundle/ruby/2.7.0/gems/rainbow-3.0.0/.rubocop.yml and fail --- .rubocop.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.rubocop.yml b/.rubocop.yml index 214673a53..8f5637e7a 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -37,4 +37,5 @@ AllCops: TargetRubyVersion: 2.2.0 Exclude: - 'gemfiles/**/*' + - 'vendor/**/*' - 'Appraisals' From 5196dfb45d8e7df6cc7663e07990417ffa41f698 Mon Sep 17 00:00:00 2001 From: Benoit Daloze Date: Wed, 30 Dec 2020 12:11:30 +0100 Subject: [PATCH 4/4] Exclude Rails 4 on TruffleRuby preventatively since the next release will target Ruby 2.7 --- .github/workflows/test.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index fb1732fa0..12b156548 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -19,6 +19,8 @@ jobs: exclude: - gemfile: 'gemfiles/activerecord_4.2.0.gemfile' ruby: '2.7' # rails 4.2 can't run on ruby 2.7 due to BigDecimal API change + - gemfile: 'gemfiles/activerecord_4.2.0.gemfile' + ruby: '2.7' # TruffleRuby 21.0 targets Ruby 2.7, same as above - gemfile: 'gemfiles/activerecord_6.0.0.gemfile' ruby: '2.4' # rails 6+ requires ruby 2.5+ - gemfile: 'gemfiles/activerecord_6.1.0.gemfile'