name: build on: pull_request: jobs: test: runs-on: ubuntu-latest strategy: fail-fast: false matrix: ruby: [jruby, 3.0, 3.1, 3.2] steps: - uses: actions/checkout@v3 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} - name: Cache dependencies uses: actions/cache@v3 with: path: vendor/bundle key: ${{ runner.os }}-${{ matrix.ruby }}-gems-${{ hashFiles('**/Gemfile.lock') }} restore-keys: | ${{ runner.os }}-${{ matrix.ruby }}-gems- - name: Install dependencies run: | bundle config path vendor/bundle bundle install --jobs 4 --retry 3 - name: Run tests run: bundle exec rake test lint: needs: test runs-on: ubuntu-latest strategy: matrix: ruby: [3.0] steps: - uses: actions/checkout@v3 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} - name: Cache dependencies uses: actions/cache@v3 with: path: vendor/bundle key: ${{ runner.os }}-${{ matrix.ruby }}-gems-${{ hashFiles('**/Gemfile.lock') }} restore-keys: | ${{ runner.os }}-${{ matrix.ruby }}-gems- - name: Install dependencies run: | bundle config path vendor/bundle bundle install --jobs 4 --retry 3 - name: Run linter run: bundle exec rubocop