.github/workflows/verify.yml
name: Verify
on:
push:
branches:
- '*'
pull_request:
branches:
- '*'
jobs:
test:
runs-on: ${{ matrix.os }}
timeout-minutes: 40
strategy:
fail-fast: true
matrix:
ruby:
- '2.7'
- '3.0'
- '3.1'
- '3.2'
os:
- ubuntu-20.04
- ubuntu-latest
exclude:
- { os: ubuntu-latest, ruby: '2.7' }
- { os: ubuntu-latest, ruby: '3.0' }
env:
RAILS_ENV: test
name: ${{ matrix.os }} - Ruby ${{ matrix.ruby }}
steps:
- name: Install system dependencies
run: sudo apt-get install graphviz
- name: Checkout code
uses: actions/checkout@v2
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Test
run: |
bundle exec rake spec
bundle exec rake cucumber
bundle exec rake yard
- name: Upload coverage report
uses: actions/upload-artifact@v2
with:
name: coverage-${{ matrix.ruby }}
path: |
coverage/
retention-days: 1