name: Ruby on: [push,pull_request] jobs: build: strategy: fail-fast: false matrix: os: [ubuntu-latest, windows-latest, macos-latest] ruby: [2.5, 2.6, 2.7, 3.0, 3.1, head, jruby, truffleruby] gemfile: [all, without_active_support, without_oj] exclude: - os: windows-latest ruby: 3.1 - os: windows-latest ruby: jruby - os: windows-latest ruby: truffleruby runs-on: ${{ matrix.os }} env: # $BUNDLE_GEMFILE must be set at the job level, so it is set for all steps BUNDLE_GEMFILE: gemfiles/${{ matrix.gemfile }}.gemfile steps: - uses: actions/checkout@v2 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - name: Run the default task run: | bundle exec rake - name: CodeCov uses: codecov/codecov-action@v1 with: files: ./coverage/coverage.xml