version: 2.1 orbs: coveralls: coveralls/coveralls@1.0.6 jobs: test: parameters: ruby-version: type: string gemfile: type: string docker: - image: 'ruby:<< parameters.ruby-version >>' environment: BUNDLE_GEMFILE: << parameters.gemfile >> BUNDLE_PATH: ../vendor/bundle COVERALLS_PARALLEL: true EAGER_LOAD: 'true' steps: - checkout - restore_cache: keys: - v1.0-<< parameters.gemfile >>-<< parameters.ruby-version >> - run: gem install bundler -v '1.17' - run: name: Install dependencies command: bundle install - save_cache: key: v1.0-<< parameters.gemfile >>-<< parameters.ruby-version >> paths: - vendor/bundle - run: name: Run Specs command: bundle exec rspec report-coverage: docker: - image: 'circleci/node:10.0.0' steps: - coveralls/upload: parallel_finished: true workflows: test-suite: jobs: - test: matrix: parameters: ruby-version: - '2.4' - '2.5' - '2.6' - '2.7' - '3.0' gemfile: - gemfiles/rails4.2_graphql1.8.gemfile - gemfiles/rails5.0_graphql1.8.gemfile - gemfiles/rails5.0_graphql1.9.gemfile - gemfiles/rails5.1_graphql1.8.gemfile - gemfiles/rails5.1_graphql1.9.gemfile - gemfiles/rails5.2_graphql1.8.gemfile - gemfiles/rails5.2_graphql1.9.gemfile - gemfiles/rails5.2_graphql1.10.gemfile - gemfiles/rails5.2_graphql1.11.gemfile - gemfiles/rails6.0_graphql1.11.gemfile - gemfiles/rails6.0_graphql1.12.gemfile - gemfiles/rails6.0_graphql1.13.gemfile - gemfiles/rails6.1_graphql1.11.gemfile - gemfiles/rails6.1_graphql1.12.gemfile - gemfiles/rails6.1_graphql1.13.gemfile - gemfiles/rails6.1_graphql2.0.gemfile - gemfiles/rails7.0_graphql1.11.gemfile - gemfiles/rails7.0_graphql1.12.gemfile - gemfiles/rails7.0_graphql1.13.gemfile - gemfiles/rails7.0_graphql2.0.gemfile exclude: - ruby-version: '2.4' gemfile: gemfiles/rails6.0_graphql1.11.gemfile - ruby-version: '2.4' gemfile: gemfiles/rails6.0_graphql1.12.gemfile - ruby-version: '2.4' gemfile: gemfiles/rails6.0_graphql1.13.gemfile - ruby-version: '2.4' gemfile: gemfiles/rails6.1_graphql1.11.gemfile - ruby-version: '2.4' gemfile: gemfiles/rails6.1_graphql1.12.gemfile - ruby-version: '2.4' gemfile: gemfiles/rails6.1_graphql1.13.gemfile - ruby-version: '2.4' gemfile: gemfiles/rails6.1_graphql2.0.gemfile - ruby-version: '2.4' gemfile: gemfiles/rails7.0_graphql1.11.gemfile - ruby-version: '2.4' gemfile: gemfiles/rails7.0_graphql1.12.gemfile - ruby-version: '2.4' gemfile: gemfiles/rails7.0_graphql1.13.gemfile - ruby-version: '2.4' gemfile: gemfiles/rails7.0_graphql2.0.gemfile - ruby-version: '2.5' gemfile: gemfiles/rails7.0_graphql1.11.gemfile - ruby-version: '2.5' gemfile: gemfiles/rails6.0_graphql1.13.gemfile - ruby-version: '2.5' gemfile: gemfiles/rails6.1_graphql1.13.gemfile - ruby-version: '2.5' gemfile: gemfiles/rails7.0_graphql1.12.gemfile - ruby-version: '2.5' gemfile: gemfiles/rails7.0_graphql1.13.gemfile - ruby-version: '2.5' gemfile: gemfiles/rails7.0_graphql2.0.gemfile - ruby-version: '2.6' gemfile: gemfiles/rails7.0_graphql1.11.gemfile - ruby-version: '2.6' gemfile: gemfiles/rails7.0_graphql1.12.gemfile - ruby-version: '2.6' gemfile: gemfiles/rails7.0_graphql1.13.gemfile - ruby-version: '2.6' gemfile: gemfiles/rails7.0_graphql2.0.gemfile - ruby-version: '2.7' gemfile: gemfiles/rails4.2_graphql1.8.gemfile - ruby-version: '3.0' gemfile: gemfiles/rails4.2_graphql1.8.gemfile - ruby-version: '3.0' gemfile: gemfiles/rails5.0_graphql1.8.gemfile - ruby-version: '3.0' gemfile: gemfiles/rails5.0_graphql1.9.gemfile - ruby-version: '3.0' gemfile: gemfiles/rails5.1_graphql1.8.gemfile - ruby-version: '3.0' gemfile: gemfiles/rails5.1_graphql1.9.gemfile - ruby-version: '3.0' gemfile: gemfiles/rails5.2_graphql1.8.gemfile - ruby-version: '3.0' gemfile: gemfiles/rails5.2_graphql1.9.gemfile - ruby-version: '3.0' gemfile: gemfiles/rails5.2_graphql1.10.gemfile - ruby-version: '3.0' gemfile: gemfiles/rails5.2_graphql1.11.gemfile - report-coverage: requires: - test