name: test on: push: paths-ignore: - '**.md' pull_request: paths-ignore: - '**.md' schedule: - cron: "0 15 * * 0" jobs: basic: runs-on: ubuntu-latest strategy: fail-fast: false matrix: ruby: ['2.5', '2.6', '2.7', '3.0', '3.1', '3.2', '3.3'] steps: - uses: actions/checkout@v4 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} - run: bundle update && bundle exec rake test - run: bundle update && bundle exec rake test:sinatra name: "rake test:sinatra SINATRA=2.2.4" env: SINATRA: 2.2.4 - run: bundle update && bundle exec rake test:sinatra name: "rake test:sinatra SINATRA=3.0.6" if: ${{ matrix.ruby != '2.5' }} env: SINATRA: 3.0.6 - run: bundle update && bundle exec rake test:sinatra name: "rake test:sinatra SINATRA=3.1.0" if: ${{ matrix.ruby != '2.5' }} env: SINATRA: 3.1.0 - run: bundle update && bundle exec rake test:sinatra name: "rake test:sinatra SINATRA=3.2.0" if: ${{ matrix.ruby != '2.5' }} env: SINATRA: 3.2.0 - run: bundle update && bundle exec rake test:sinatra name: "rake test:sinatra SINATRA=4.0.0" if: ${{ matrix.ruby != '2.5' && matrix.ruby != '2.6' }} env: SINATRA: 4.0.0 - run: bundle update && bundle exec rake test:sinatra name: "rake test:sinatra SINATRA=main" if: ${{ matrix.ruby != '2.5' && matrix.ruby != '2.6' }} env: SINATRA: main rails-5: runs-on: ubuntu-latest strategy: fail-fast: false steps: - uses: actions/checkout@v4 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: 2.7 - run: bundle update && bundle exec rake test:rails name: "rake test:rails RAILS=5.2.8" env: RAILS: 5.2.8 rails-6: runs-on: ubuntu-latest strategy: fail-fast: false steps: - uses: actions/checkout@v4 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: 2.7 - run: bundle update && bundle exec rake test:rails name: "rake test:rails RAILS=6.0.6" env: RAILS: 6.0.6 - run: bundle update && bundle exec rake test:rails name: "rake test:rails RAILS=6.1.7" env: RAILS: 6.1.7 rails-7: runs-on: ubuntu-latest strategy: fail-fast: false steps: - uses: actions/checkout@v4 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: 3.3 - run: bundle update && bundle exec rake test:rails name: "rake test:rails RAILS=7.0.8" env: RAILS: 7.0.8 - run: bundle update && bundle exec rake test:rails name: "rake test:rails RAILS=7.1.3" env: RAILS: 7.1.3 - run: bundle update && bundle exec rake test:rails name: "rake test:rails RAILS=main" env: RAILS: main