.github/workflows/ci.yml
name: ci
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
gemfile: [rails_5_2.gemfile, rails_6_0.gemfile, rails_6_1.gemfile, rails_7_0.gemfile]
ruby_version: [2.5, 2.6, 2.7, 3.0.4, 3.1]
exclude:
- gemfile: rails_7_0.gemfile
ruby_version: 2.6
- gemfile: rails_7_0.gemfile
ruby_version: 2.5
- gemfile: rails_5_2.gemfile
ruby_version: 3.1
- gemfile: rails_5_2.gemfile
ruby_version: 3.0.4
steps:
- uses: actions/checkout@v2
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby_version }}
- name: Before build
run: |
sudo apt-get install libsqlite3-dev
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
chmod +x ./cc-test-reporter
./cc-test-reporter before-build
env:
CC_TEST_REPORTER_ID: b94c73e21e64da03cde9403f237f1dd1927d97a6f188b99dd651ebf9051ebe35
- name: Build and test
run: |
bundle install --gemfile spec/gemfiles/${{ matrix.gemfile }} --jobs 4 --retry 3
bundle exec rake code_analysis
bundle exec rspec
- name: Report to CodeClimate
run: |
./cc-test-reporter after-build --exit-code 0
env:
CC_TEST_REPORTER_ID: b94c73e21e64da03cde9403f237f1dd1927d97a6f188b99dd651ebf9051ebe35