@@ -16,22 +16,24 @@ jobs:
1616 - name : Install Ruby and gems
1717 uses : ruby/setup-ruby@v1
1818 with :
19- ruby-version : 3.4.7
19+ ruby-version : 3.4
2020 bundler-cache : true
2121
2222 - name : Run Rubocop
2323 run : bin/rubocop
2424
2525 test :
2626 runs-on : ubuntu-latest
27- name : Ruby ${{ matrix.ruby }}
27+ name : Ruby ${{ matrix.ruby }} (${{ matrix.appraisal }})
2828 strategy :
2929 matrix :
30- ruby :
31- - " 3.1.7"
32- - " 3.2.9"
33- - " 3.3.10"
34- - " 3.4.7"
30+ ruby : ["3.1", "3.2", "3.3", "3.4"]
31+ appraisal : ["rails_7.1", "rails_7.2", "rails_8.0", "rails_8.1"]
32+ exclude :
33+ - ruby : " 3.1"
34+ appraisal : " rails_8.0"
35+ - ruby : " 3.1"
36+ appraisal : " rails_8.1"
3537 services :
3638 postgres :
3739 image : postgres:17
@@ -49,21 +51,26 @@ jobs:
4951 env :
5052 RAILS_ENV : test
5153 CI : true
54+ # Use absolute path for BUNDLE_GEMFILE to avoid issues with relative path resolution
55+ BUNDLE_GEMFILE : ${{ github.workspace }}/gemfiles/${{ matrix.appraisal }}.gemfile
5256 steps :
53- - name : Checkout code
54- uses : actions/checkout@v4
57+ - name : Checkout code
58+ uses : actions/checkout@v4
5559
56- - name : Install Ruby and gems
57- uses : ruby/setup-ruby@v1
58- with :
59- ruby-version : ${{ matrix.ruby }}
60- bundler-cache : true
60+ - name : Install Ruby and gems
61+ uses : ruby/setup-ruby@v1
62+ with :
63+ ruby-version : ${{ matrix.ruby }}
64+ bundler-cache : true
6165
62- - name : Set up Dummy
63- run : spec/dummy/bin/setup
66+ - name : Set up Dummy
67+ run : spec/dummy/bin/setup
6468
65- - name : Run tests
66- run : bin/rspec
69+ - name : Run tests
70+ run : bin/rspec
6771
68- - name : Run tests with customization
69- run : CHANGE_FIELD_BASE_CLASS=true CHANGE_VALUE_CLASS=true bin/rspec
72+ - name : Run tests with customization
73+ run : bin/rspec
74+ env :
75+ CHANGE_FIELD_BASE_CLASS : true
76+ CHANGE_VALUE_CLASS : true
0 commit comments