From ff959be65fcd4c574a697cc70eb5bc5f7c7968ba Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Tue, 27 Jul 2021 19:31:23 +0200 Subject: [PATCH 01/16] Move to GitHub Actions CI --- .github/workflows/ci.yml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 .github/workflows/ci.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..0254ea3 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,24 @@ +name: CI +on: [push, pull_request] +jobs: + tests: + runs-on: ubuntu-latest + strategy: + matrix: + ruby: [ 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, "3.0", head, jruby, truffleruby ] + gemfile: [ "rails_4.2", "rails_5.0", "rails_5.1", "rails_5.2" ] + + env: + BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile + + steps: + - uses: actions/checkout@v2 + + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: ${{ matrix.ruby }} + bundler-cache: true + + - name: Run tests + run: bundle exec rake test From 58473b37285b87d020ef8022213fb21a78bcaf97 Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Tue, 27 Jul 2021 19:38:11 +0200 Subject: [PATCH 02/16] Avoid cancelling every other job in the matrix by disabling fail-fast --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0254ea3..85978a6 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,6 +4,7 @@ jobs: tests: runs-on: ubuntu-latest strategy: + fail-fast: false matrix: ruby: [ 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, "3.0", head, jruby, truffleruby ] gemfile: [ "rails_4.2", "rails_5.0", "rails_5.1", "rails_5.2" ] From 7069721ad5a8d58c3c8cc3f6e7429d0a30e070fa Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 18:40:38 +0200 Subject: [PATCH 03/16] Incorporate new Rubies + Rails testings --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 85978a6..9af361f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,8 +6,8 @@ jobs: strategy: fail-fast: false matrix: - ruby: [ 2.2, 2.3, 2.4, 2.5, 2.6, 2.7, "3.0", head, jruby, truffleruby ] - gemfile: [ "rails_4.2", "rails_5.0", "rails_5.1", "rails_5.2" ] + ruby: [ 2.6, 2.7, "3.0", head, jruby, truffleruby ] + gemfile: [ "rails_5.0", "rails_5.1", "rails_5.2", "rails_6.0", "rails_6.1" ] env: BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile From 6213ed10b8e807fc4bac8943f6d142643bfc4fd0 Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 18:43:09 +0200 Subject: [PATCH 04/16] Don't bother specifying rails_ before each gemfile version --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9af361f..0415e57 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,10 +7,10 @@ jobs: fail-fast: false matrix: ruby: [ 2.6, 2.7, "3.0", head, jruby, truffleruby ] - gemfile: [ "rails_5.0", "rails_5.1", "rails_5.2", "rails_6.0", "rails_6.1" ] + gemfile: [ 5.0, 5.1, 5.2, 6.0, 6.1 ] env: - BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile + BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/rails_${{ matrix.gemfile }}.gemfile steps: - uses: actions/checkout@v2 From 38b4eb67ad999c9da1a08e52333028322804ce47 Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 18:44:06 +0200 Subject: [PATCH 05/16] Still need quotes around the version numbers --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0415e57..b12bb27 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,7 +7,7 @@ jobs: fail-fast: false matrix: ruby: [ 2.6, 2.7, "3.0", head, jruby, truffleruby ] - gemfile: [ 5.0, 5.1, 5.2, 6.0, 6.1 ] + gemfile: [ "5.0", "5.1", "5.2", "6.0", "6.1" ] env: BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/rails_${{ matrix.gemfile }}.gemfile From 2cc6309cdc79988f3b4941e4da0ba66be33e58e4 Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 18:47:19 +0200 Subject: [PATCH 06/16] Rename variable to rails to clarify later conditional job executions --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b12bb27..62360be 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,10 +7,10 @@ jobs: fail-fast: false matrix: ruby: [ 2.6, 2.7, "3.0", head, jruby, truffleruby ] - gemfile: [ "5.0", "5.1", "5.2", "6.0", "6.1" ] + rails: [ "5.0", "5.1", "5.2", "6.0", "6.1" ] env: - BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/rails_${{ matrix.gemfile }}.gemfile + BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/rails_${{ matrix.rails }}.gemfile steps: - uses: actions/checkout@v2 From e66bf8631b8987aec3ed10c7bdeebfb73a1ff43d Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 18:53:55 +0200 Subject: [PATCH 07/16] Skip <6.0 builds for Ruby 3+ --- .github/workflows/ci.yml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 62360be..7a7c15f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,8 +6,17 @@ jobs: strategy: fail-fast: false matrix: - ruby: [ 2.6, 2.7, "3.0", head, jruby, truffleruby ] + ruby: [ 2.6, 2.7, jruby, truffleruby ] rails: [ "5.0", "5.1", "5.2", "6.0", "6.1" ] + include: + - ruby: "3.0" + rails: "6.0" + - ruby: "3.0" + rails: "6.1" + - ruby: head + rails: "6.0" + - ruby: head + rails: "6.1" env: BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/rails_${{ matrix.rails }}.gemfile From afa4d4a5115560ebd28796e876cb687d33b9f080 Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 18:57:17 +0200 Subject: [PATCH 08/16] Allow failures for head/jruby/truffleruby --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7a7c15f..0d97b92 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,3 +32,4 @@ jobs: - name: Run tests run: bundle exec rake test + continue-on-error: ${{ matrix.ruby == "head" || matrix.ruby == "jruby" || matrix.ruby == "truffleruby" }} From 9f3e45b2bd6835233195e620086bddfcd1f539f7 Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 18:58:26 +0200 Subject: [PATCH 09/16] Gotta redelete the travis setup --- .travis.yml | 32 -------------------------------- 1 file changed, 32 deletions(-) delete mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 5be6478..0000000 --- a/.travis.yml +++ /dev/null @@ -1,32 +0,0 @@ ---- -language: ruby -before_install: - - "travis_retry gem install bundler || travis_retry gem install bundler -v 1.17.3" - - "rm -f ${BUNDLE_GEMFILE}.lock" -before_script: - - bundle update -cache: bundler -rvm: - - 2.6.8 - - 2.7.4 - - jruby -gemfile: - - gemfiles/rails_5.0.gemfile - - gemfiles/rails_5.1.gemfile - - gemfiles/rails_5.2.gemfile - - gemfiles/rails_6.0.gemfile - - gemfiles/rails_6.1.gemfile -jobs: - allow_failures: - - rvm: jruby - - rvm: ruby-head - fast_finish: true - include: - - rvm: 3.0.2 - gemfile: gemfiles/rails_6.0.gemfile - - rvm: 3.0.2 - gemfile: gemfiles/rails_6.1.gemfile - - rvm: ruby-head - gemfile: gemfiles/rails_6.0.gemfile - - rvm: ruby-head - gemfile: gemfiles/rails_6.1.gemfile From eb40b136de3e2b8aea474eb8824e3acd7b0467fe Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 18:59:48 +0200 Subject: [PATCH 10/16] Ok, is this the right syntax? --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0d97b92..003e719 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,4 +32,4 @@ jobs: - name: Run tests run: bundle exec rake test - continue-on-error: ${{ matrix.ruby == "head" || matrix.ruby == "jruby" || matrix.ruby == "truffleruby" }} + continue-on-error: ${{ matrix.ruby == "jruby" }} From 880dad82305c8e0cd9323b1dbc1ff22963cd98ec Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 19:54:07 +0200 Subject: [PATCH 11/16] Docs seem to indicate single quoted strings --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 003e719..3365b35 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,4 +32,4 @@ jobs: - name: Run tests run: bundle exec rake test - continue-on-error: ${{ matrix.ruby == "jruby" }} + continue-on-error: ${{ matrix.ruby == 'jruby' }} From a535b8ccf0bc11272412ad77613e945b4ef5e1f6 Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 19:54:56 +0200 Subject: [PATCH 12/16] Is the expression wrong? --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3365b35..50250c8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -32,4 +32,4 @@ jobs: - name: Run tests run: bundle exec rake test - continue-on-error: ${{ matrix.ruby == 'jruby' }} + continue-on-error: ${{ true }} From 59374902a348f28f1d18774ac26cc4f3aa032a9a Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 20:02:06 +0200 Subject: [PATCH 13/16] Looks like we can't test on jruby given 2.6 requirement; swap truffleruby testing to later Rails versions --- .github/workflows/ci.yml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 50250c8..4e6d080 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,7 +6,7 @@ jobs: strategy: fail-fast: false matrix: - ruby: [ 2.6, 2.7, jruby, truffleruby ] + ruby: [ 2.6, 2.7 ] rails: [ "5.0", "5.1", "5.2", "6.0", "6.1" ] include: - ruby: "3.0" @@ -17,6 +17,10 @@ jobs: rails: "6.0" - ruby: head rails: "6.1" + - ruby: truffleruby + rails: "6.0" + - ruby: truffleruby + rails: "6.1" env: BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/rails_${{ matrix.rails }}.gemfile From b26142f7ab68ad3d87df2212be835d5c1b8d116e Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 20:10:17 +0200 Subject: [PATCH 14/16] Try to add back in the correct expression again --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4e6d080..a6c3a59 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -36,4 +36,4 @@ jobs: - name: Run tests run: bundle exec rake test - continue-on-error: ${{ true }} + continue-on-error: ${{ matrix.ruby == 'head' || matrix.ruby == 'truffleruby' }} From 019f39eb2581aa5cb1ec951e48bbce6bafcb84f7 Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 20:16:42 +0200 Subject: [PATCH 15/16] Keep quotes consistent --- .github/workflows/ci.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a6c3a59..83dbacc 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,20 +7,20 @@ jobs: fail-fast: false matrix: ruby: [ 2.6, 2.7 ] - rails: [ "5.0", "5.1", "5.2", "6.0", "6.1" ] + rails: [ '5.0', '5.1', '5.2', '6.0', '6.1' ] include: - - ruby: "3.0" - rails: "6.0" - - ruby: "3.0" - rails: "6.1" + - ruby: '3.0' + rails: '6.0' + - ruby: '3.0' + rails: '6.1' - ruby: head - rails: "6.0" + rails: '6.0' - ruby: head - rails: "6.1" + rails: '6.1' - ruby: truffleruby - rails: "6.0" + rails: '6.0' - ruby: truffleruby - rails: "6.1" + rails: '6.1' env: BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/rails_${{ matrix.rails }}.gemfile From a6789a887c55e3c768bcff1f6dd37b2725f10ea6 Mon Sep 17 00:00:00 2001 From: Kasper Timm Hansen Date: Wed, 28 Jul 2021 20:28:18 +0200 Subject: [PATCH 16/16] =?UTF-8?q?Our=20build=20so=20smoll,=20our=20wait=20?= =?UTF-8?q?so=20long=20=E2=80=94=20too=20long?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 83dbacc..b1167f2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -37,3 +37,4 @@ jobs: - name: Run tests run: bundle exec rake test continue-on-error: ${{ matrix.ruby == 'head' || matrix.ruby == 'truffleruby' }} + timeout-minutes: 3