name: CI on: push: pull_request: jobs: test: runs-on: ${{ matrix.os }}-latest strategy: matrix: os: - ubuntu - macos ruby-version: - jruby-9.2 - jruby-9.3 - 3.1 - 3.0 - 2.7 - 2.6 - 2.5 steps: - uses: actions/checkout@v2 - name: Set up Ruby ${{ matrix.ruby-version }} uses: ruby/setup-ruby@v1 with: bundler-cache: true ruby-version: ${{ matrix.ruby-version }} - name: Install dependencies run: bundle install - name: Download test cases run: git clone --depth 5 --branch v4.1.0 https://github.com/Unleash/client-specification.git client-specification - name: rubocop uses: reviewdog/action-rubocop@v2 with: github_token: ${{ secrets.GITHUB_TOKEN }} rubocop_version: gemfile rubocop_extensions: rubocop-rspec:gemfile reporter: github-pr-review # Default is github-pr-check - name: Run tests run: bundle exec rake env: COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Coveralls Parallel uses: coverallsapp/github-action@master with: github-token: ${{ secrets.GITHUB_TOKEN }} flag-name: run-${{ matrix.test_number }} parallel: true - name: Notify Slack of pipeline completion uses: 8398a7/action-slack@v3 if: ${{ github.event.pull_request.head.repo.full_name == github.event.pull_request.base.repo.full_name }} with: status: ${{ job.status }} text: Built on ${{ matrix.os }} - Ruby ${{ matrix.ruby-version }} fields: repo,message,commit,author,action,eventName,ref,workflow,job,took env: SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} finish: needs: test runs-on: ubuntu-latest steps: - name: Coveralls Finished uses: coverallsapp/github-action@master with: github-token: ${{ secrets.GITHUB_TOKEN }} parallel-finished: true