smartinez87/exception_notification

View on GitHub
.github/workflows/main.yml

Summary

Maintainability
Test Coverage
name: main
on:
  - push
  - pull_request
jobs:
  rspec:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: true
      matrix:
        ruby-version:
          - 2.6
          - 2.7
          - 3.0.0
          - 3.1
        gemfile:
          - rails5_2.gemfile
          - rails6_0.gemfile
          - rails6_1.gemfile
          - rails7_0.gemfile
        exclude:
          - ruby-version: 2.6
            gemfile: rails7_0.gemfile
          - ruby-version: 3.0.0
            gemfile: rails5_2.gemfile
          - ruby-version: 3.1
            gemfile: rails5_2.gemfile
    steps:
      - name: Checkout repository
        uses: actions/checkout@v2

      - name: Install Ruby
        uses: ruby/setup-ruby@v1
        with:
          ruby-version: ${{ matrix.ruby-version }}
          bundler-cache: true

      - name: Install required gems
        run: BUNDLE_GEMFILE=gemfiles/${{ matrix.gemfile }} bundle install --jobs=3 --retry=3

      - name: Run rspec tests
        run: BUNDLE_GEMFILE=gemfiles/${{ matrix.gemfile }} bundle exec rake test

  rubocop:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v2

      - name: Install Ruby
        uses: ruby/setup-ruby@v1
        with:
          ruby-version: 3.0.0
          bundler-cache: true

      - name: Install required gems
        run: bundle install

      - name: Run rubocop
        run: bundle exec rubocop