ruby-grape/grape-swagger

View on GitHub
.github/workflows/ci.yml

Summary

Maintainability
Test Coverage
name: RSpec

on:
  push:
    branches:
      - '*'
  pull_request:
    branches:
      - '*'

permissions:
  contents: read

jobs:
  rubocop:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: ruby/setup-ruby@v1
        with:
          ruby-version: '3.3'
          bundler-cache: true
      - name: Run rubocop
        run: bundle exec rubocop --parallel --format progress

  grape-17:
    runs-on: ubuntu-latest
    needs: ['rubocop']
    env:
      GRAPE_VERSION: '1.7.1'
    strategy:
      matrix:
        ruby-version: ['3.0', '3.1', '3.2', '3.3', 'head']
    steps:
    - name: Check out branch
      uses: actions/checkout@v4
    - name: Set up Ruby
      uses: ruby/setup-ruby@v1
      with:
        ruby-version: ${{ matrix.ruby-version }}
    - name: Run rspec wo model parser
      run: |
        bundle update
        bundle exec rspec
    - name: Run rspec w entity parser
      env:
        MODEL_PARSER: grape-swagger-entity
      run: |
        bundle update
        bundle exec rspec
    - name: Run rspec w representable parser
      env:
        MODEL_PARSER: grape-swagger-representable
      run: |
        bundle update
        bundle exec rspec

  grape-18:
    runs-on: ubuntu-latest
    needs: ['rubocop']
    env:
      GRAPE_VERSION: '1.8.0'
    strategy:
      matrix:
        ruby-version: ['3.0', '3.1', '3.2', '3.3', 'head']
    steps:
    - name: Check out branch
      uses: actions/checkout@v4
    - name: Set up Ruby
      uses: ruby/setup-ruby@v1
      with:
        ruby-version: ${{ matrix.ruby-version }}
    - name: Run rspec wo model parser
      run: |
        bundle update
        bundle exec rspec
    - name: Run rspec w entity parser
      env:
        MODEL_PARSER: grape-swagger-entity
      run: |
        bundle update
        bundle exec rspec
    - name: Run rspec w representable parser
      env:
        MODEL_PARSER: grape-swagger-representable
      run: |
        bundle update
        bundle exec rspec

  grape-20:
    runs-on: ubuntu-latest
    needs: ['rubocop']
    env:
      GRAPE_VERSION: '2.0.0'
    strategy:
      matrix:
        ruby-version: ['3.0', '3.1', '3.2', '3.3', 'head']
    steps:
    - name: Check out branch
      uses: actions/checkout@v4
    - name: Set up Ruby
      uses: ruby/setup-ruby@v1
      with:
        ruby-version: ${{ matrix.ruby-version }}
    - name: Run rspec wo model parser
      run: |
        bundle update
        bundle exec rspec
    - name: Run rspec w entity parser
      env:
        MODEL_PARSER: grape-swagger-entity
      run: |
        bundle update
        bundle exec rspec
    - name: Run rspec w representable parser
      env:
        MODEL_PARSER: grape-swagger-representable
      run: |
        bundle update
        bundle exec rspec

  grape-HEAD:
    runs-on: ubuntu-latest
    needs: ['rubocop']
    env:
      GRAPE_VERSION: 'HEAD'
    strategy:
      matrix:
        ruby-version: ['3.0', '3.1', '3.2', '3.3', 'head']
    steps:
    - name: Check out branch
      uses: actions/checkout@v4
    - name: Set up Ruby
      uses: ruby/setup-ruby@v1
      with:
        ruby-version: ${{ matrix.ruby-version }}
    - name: Run rspec wo model parser
      run: |
        bundle update
        bundle exec rspec
    - name: Run rspec w entity parser
      env:
        MODEL_PARSER: grape-swagger-entity
      run: |
        bundle update
        bundle exec rspec
    - name: Run rspec w representable parser
      env:
        MODEL_PARSER: grape-swagger-representable
      run: |
        bundle update
        bundle exec rspec