Skip to content

Add GitHub Actions CI workflow and update dependencies #7

Add GitHub Actions CI workflow and update dependencies

Add GitHub Actions CI workflow and update dependencies #7

Workflow file for this run

name: CI
on:
push:
branches: [ master, main ]
pull_request:
branches: [ master, main ]
jobs:
test:
name: Test Suite
runs-on: ubuntu-latest
services:
postgres:
image: postgres:15
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: sqlquery_test
ports:
- 5432:5432
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
CI: true
PGHOST: localhost
PGUSER: postgres
PGPASSWORD: postgres
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Ruby 3.2
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.2'
bundler-cache: true
- name: Run tests
run: bundle exec rspec
- name: Check coverage
run: |
echo "Coverage report generated at coverage/index.html"
if [ -f coverage/.last_run.json ]; then
echo "Coverage summary:"
cat coverage/.last_run.json
fi
- name: Upload coverage report
uses: actions/upload-artifact@v4
if: always()
with:
name: coverage-report
path: coverage/
retention-days: 7
lint:
name: RuboCop
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Ruby 3.2
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.2'
bundler-cache: true
- name: Run RuboCop
run: bundle exec rubocop --format progress