name: Build
on:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:
  run-tests:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        ruby: [ '2.7.6', '3.0.4', '3.1.2' ] #, 'jruby-head' ]
    steps:
      - name: Setup Ruby, JRuby and TruffleRuby
        uses: ruby/setup-ruby@v1.215.0
        with:
          ruby-version: ${{ matrix.ruby }}
      - uses: actions/checkout@v4   
      - name: Install dependecies
        run: bundle install
      - name: Run Tests
        run: ./run_tests.sh
     
  auto-merge:
    needs: run-tests
    runs-on: ubuntu-latest
    steps:
      - name: Check out repo
        uses: actions/checkout@v4
      - name: auto-merge
        if: |
          github.actor == 'dependabot[bot]' &&
          github.event_name == 'pull_request'
        run: |
          gh pr merge --auto --rebase "$PR_URL"
        env:
          PR_URL: ${{github.event.pull_request.html_url}}
          # this secret needs to be in the settings.secrets.dependabot
          GITHUB_TOKEN: ${{secrets.GH_ACTION_TOKEN}} 
