name: Specs on: - push - pull_request jobs: all_specs: name: All Specs strategy: matrix: ruby: ['2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2'] gemfile: ['Gemfile', 'gemfiles/aws_sdk_core_2.gemfile'] runs-on: ubuntu-20.04 services: moto_sqs: image: quay.io/cjlarose/moto-sqs-server:1.1.0 ports: - 5000:5000 env: BUNDLE_GEMFILE: ${{ matrix.gemfile }} steps: - name: Checkout code uses: actions/checkout@v2 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - name: Run specs run: bundle exec rake spec - name: Run integration specs run: bundle exec rake spec:integration rails_specs: name: Rails Specs strategy: matrix: rails: ['4.2', '5.2', '6.0', '6.1', '7.0'] include: - rails: '4.2' ruby: '2.2' gemfile: gemfiles/rails_4_2.gemfile - rails: '5.2' ruby: '2.5' gemfile: gemfiles/rails_5_2.gemfile - rails: '6.0' ruby: '2.6' gemfile: gemfiles/rails_6_0.gemfile - rails: '6.1' ruby: '3.0' gemfile: gemfiles/rails_6_1.gemfile - rails: '7.0' ruby: '3.1' gemfile: gemfiles/rails_7_0.gemfile runs-on: ubuntu-20.04 env: BUNDLE_GEMFILE: ${{ matrix.gemfile }} steps: - name: Checkout code uses: actions/checkout@v2 - uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - name: Run Rails specs run: bundle exec rake spec:rails