jpmcgrath/shortener

View on GitHub
.github/workflows/ruby.yml

Summary

Maintainability
Test Coverage
name: Ruby

on:
  push:
    branches: [ develop ]
  pull_request:
    branches: [ develop ]

jobs:
  test:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: true
      matrix:
        ruby-version: 
          - '2.4'
          - '2.7'
          - '3.0'
          - '3.2'
        gemfile:
          - rails_4.2.gemfile
          - rails_5.2.gemfile
          - rails_6.0.gemfile
          - rails_6.1.gemfile
          - rails_7.0.gemfile
        include:
          - ruby-version: '2.4'
            gemfile: rails_4.2.gemfile
            bundler-version: 1
        exclude:
        - ruby-version: '2.7'
          gemfile: rails_4.2.gemfile
        - ruby-version: '3.0'
          gemfile: rails_4.2.gemfile
        - ruby-version: '3.2'
          gemfile: rails_4.2.gemfile
        - ruby-version: '3.0'
          gemfile: rails_5.2.gemfile
        - ruby-version: '3.2'
          gemfile: rails_5.2.gemfile
        - ruby-version: '2.4'
          gemfile: rails_6.0.gemfile
        - ruby-version: '3.2'
          gemfile: rails_6.0.gemfile
        - ruby-version: '2.4'
          gemfile: rails_6.1.gemfile
        - ruby-version: '3.2'
          gemfile: rails_6.1.gemfile
        - ruby-version: '2.4'
          gemfile: rails_7.0.gemfile

    env:
      BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}

    steps:
    - uses: actions/checkout@v3
    - name: Set up Ruby
      uses: ruby/setup-ruby@v1
      with:
        ruby-version: ${{ matrix.ruby-version }}
        bundler: ${{ matrix.bundler-version }}
        bundler-cache: true
    - name: Run tests
      run: bundle exec rake