name: Ruby on: push: branches: - '*' pull_request: branches: - '*' permissions: contents: read jobs: rubocop: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - uses: ruby/setup-ruby@v1 with: ruby-version: '3.1' bundler-cache: true - name: Run rubocop run: bundle exec rubocop --parallel --format progress rspec: runs-on: ubuntu-latest needs: ['rubocop'] strategy: matrix: ruby-version: ['2.7', '3.0', '3.1', 'head'] grape-version: [1.6.2, 1.5.3] model-parser: [grape-swagger-entity, grape-swagger-representable, ''] steps: - name: Check out branch uses: actions/checkout@v3 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby-version }} GRAPE_VERSION: ${{ matrix.grape-version }} MODEL_PARSER: ${{ matrix.model-parser }} bundler-cache: true - name: Run rspec rest of the suite run: bundle exec rspec