1010 # Default versions for canonical release build
1111 DEFAULT_JAVA_VERSION : ' 8'
1212 DEFAULT_JRUBY_VERSION : ' 9.4.13.0' # Should match pom.xml <jruby.version> property (AND a version inside the test matrix)
13+ DEFAULT_RACK_VERSION : ' ~> 2.2' # Should match Gemfile (AND a version inside the test matrix)
1314
1415jobs :
1516 build :
16- name : JRuby ${{ matrix.jruby_version }} / Java ${{ matrix.java_version }}
17+ name : Rack ${{ matrix.rack_version }} on JRuby ${{ matrix.jruby_version }} / Java ${{ matrix.java_version }}
1718 runs-on : ubuntu-latest
1819
1920 strategy :
2021 matrix :
2122 jruby_version : [ '9.3.15.0', '9.4.13.0' ]
2223 java_version : [ '8', '11', '17', '21' ]
24+ rack_version : [ '~> 2.2' ]
2325 fail-fast : false
2426
2527 steps :
@@ -34,29 +36,39 @@ jobs:
3436
3537 - name : Build with Maven
3638 run : ./mvnw -B install -Djruby.version=${{ matrix.jruby_version }}
39+ env :
40+ RACK_VERSION : ${{ matrix.rack_version }}
3741
3842 # Uploads the full dependency graph to GitHub to improve the quality of Dependabot alerts this repository can receive
3943 - name : Update dependency graph
4044 uses : advanced-security/maven-dependency-submission-action@b275d12641ac2d2108b2cbb7598b154ad2f2cee8 # v5.0.0
41- if : github.ref == 'refs/heads/master' && matrix.java_version == env.DEFAULT_JAVA_VERSION && matrix.jruby_version == env.DEFAULT_JRUBY_VERSION
45+ if : github.ref == 'refs/heads/master' && matrix.java_version == env.DEFAULT_JAVA_VERSION && matrix.jruby_version == env.DEFAULT_JRUBY_VERSION && matrix.rack_version == env.DEFAULT_RACK_VERSION
4246
4347 appraisals :
4448 needs : build
45- name : ${{ matrix.appraisal }} appraisal on ${{ matrix.jruby_version }} / Java ${{ matrix.java_version }}
49+ name : ${{ matrix.appraisal }} on ${{ matrix.jruby_version }} / Java ${{ matrix.java_version }}
4650 runs-on : ubuntu-latest
4751
4852 strategy :
4953 matrix :
54+ appraisal : [
55+ ' rails50_rack22' ,
56+ ' rails52_rack22' ,
57+ ' rails60_rack22' ,
58+ ' rails61_rack22' ,
59+ ' rails70_rack22' ,
60+ ' rails71_rack22' ,
61+ ' rails72_rack22' ,
62+ ]
5063 jruby_version : [ '9.3.15.0', '9.4.13.0' ]
5164 java_version : [ '8', '11', '17', '21' ]
52- appraisal : [ 'rails50', 'rails52', 'rails60', 'rails61', 'rails70', 'rails71', 'rails72' ]
5365 exclude :
54- - jruby_version : ' 9.3.15.0 '
55- appraisal : ' rails70 ' # Requires Ruby 2.7 compatibility, which JRuby 9.3 does not support
56- - jruby_version : ' 9.3.15.0 '
57- appraisal : ' rails71 ' # Requires Ruby 2.7 compatibility, which JRuby 9.3 does not support
58- - jruby_version : ' 9.3.15.0 '
59- appraisal : ' rails72 ' # Requires Ruby 3.1 compatibility, which JRuby 9.3 does not support
66+ - appraisal : ' rails70_rack22 ' # Requires Ruby 2.7 compatibility, which JRuby 9.3 does not support
67+ jruby_version : ' 9.3.15.0 '
68+ - appraisal : ' rails71_rack22 ' # Requires Ruby 2.7 compatibility, which JRuby 9.3 does not support
69+ jruby_version : ' 9.3.15.0 '
70+ - appraisal : ' rails72_rack22 ' # Requires Ruby 3.1 compatibility, which JRuby 9.3 does not support
71+ jruby_version : ' 9.3.15.0 '
6072 fail-fast : false
6173
6274 env :
0 commit comments