name: CI on: workflow_dispatch: push: branches: - main pull_request: permissions: contents: read jobs: test: runs-on: ubuntu-latest strategy: matrix: ruby-version: [2.6, 2.7, 3.0] services: postgres: image: postgres:12.1-alpine ports: - 5432:5432 env: POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 steps: - name: Checkout Project uses: actions/checkout@v3 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby-version }} bundler-cache: true - name: Install Library Dependencies run: sudo apt-get install libpq-dev - name: Setup Database run: | cp config/database.yml.github-actions config/database.yml env: RAILS_ENV: test POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres - name: Test with RSpec env: RAILS_ENV: "test" POSTGRES_USER: postgres POSTGRES_PASSWORD: postgres run: | bundle exec rspec