# This workflow uses actions that are not certified by GitHub. # They are provided by a third-party and are governed by # separate terms of service, privacy policy, and support # documentation. # This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake # For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby name: Ruby on: pull_request: paths-ignore: - 'README.md' push: paths-ignore: - 'README.md' jobs: test: services: redis: image: redis:alpine ports: ["6379:6379"] options: --entrypoint redis-server runs-on: ubuntu-latest strategy: matrix: rails_version: ['4.2.7', '5.1.0', '5.2.0', '6.0.0', '6.1.0', '7.0'] ruby-version: ['2.6', '2.7', '3.0', '3.1'] exclude: - ruby-version: '3.0' rails_version: '4.2.7' - ruby-version: '3.1' rails_version: '4.2.7' - ruby-version: '3.0' rails_version: '5.0' - ruby-version: '3.1' rails_version: '5.0' - ruby-version: '3.0' rails_version: '5.1' - ruby-version: '3.1' rails_version: '5.1' - ruby-version: '3.0' rails_version: '5.2' - ruby-version: '3.1' rails_version: '5.2' - ruby-version: '3.0' rails_version: '6.0' - ruby-version: '3.1' rails_version: '6.0' - ruby-version: '3.1' rails_version: '6.1' - ruby-version: '2.6' rails_version: '7.0' steps: - uses: actions/checkout@v2 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby-version }} bundler-cache: true # runs 'bundle install' and caches installed gems automatically env: RAILS_VERSION: "${{ matrix.rails_version }}" - name: Install Graphviz run: sudo apt-get install graphviz - name: Run tests run: bundle exec rspec env: REDIS_URL: redis://localhost:6379/1 RAILS_VERSION: "${{ matrix.rails_version }}"