name: CI

on:
  push:
    branches: [ master ]
  pull_request:
    branches: [ master ]

permissions:
  contents: read

jobs:
  tests:
    services:
      postgres:
        image: postgres:latest
        ports: ["5432:5432"]
        options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
        env:
          POSTGRES_PASSWORD: postgres
    strategy:
      fail-fast: false
      matrix:
        os: [ubuntu-latest]
        ruby: [ "2.0.0", 2.1, 2.4, 2.5, 2.6, 2.7, "3.0", 3.1, 3.2, 3.3, 3.4, "4.0" ]
        include:
          - { os: ubuntu-22.04, ruby: "1.9.3" }
    runs-on: ${{ matrix.os }}
    name: ${{ matrix.ruby }}
    env:
      BUNDLE_GEMFILE: .ci.gemfile
    steps:
    - uses: actions/checkout@v4
    - uses: actions/checkout@v4
      with:
        repository: jeremyevans/sequel
        path: sequel
    - run: sudo apt-get -yqq install libpq-dev
    - uses: ruby/setup-ruby@v1
      with:
        ruby-version: ${{ matrix.ruby }}
        bundler-cache: true
    - run: bundle exec rake spec_ci
