Skip to content

Check if audits is loaded before executing database queries #246

Check if audits is loaded before executing database queries

Check if audits is loaded before executing database queries #246

Workflow file for this run

name: CI
on:
- pull_request
- push
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
ruby: [2.3, 2.4, 2.5, 2.6, 2.7, 3.0, 3.1, 3.2]
appraisal:
- rails52
- rails60
- rails61
- rails70
- rails71
db: [POSTGRES, MYSQL, SQLITE]
exclude:
# MySQL has issues on Ruby 2.3
# https://github.com/ruby/setup-ruby/issues/150
- ruby: 2.3
db: MYSQL
# PostgreSQL is segfaulting on 2.3
# Doesn't seem worth solving.
- ruby: 2.3
db: POSTGRES
# Rails 5.2 supports Ruby 2.2-2.5
- appraisal: rails52
ruby: 2.6
- appraisal: rails52
ruby: 2.7
- appraisal: rails52
ruby: 3.0
- appraisal: rails52
ruby: 3.1
- appraisal: rails52
ruby: 3.2
# Rails 6.0 supports Ruby 2.5-2.7
- appraisal: rails60
ruby: 2.3
- appraisal: rails60
ruby: 2.4
- appraisal: rails60
ruby: 3.0
- appraisal: rails60
ruby: 3.1
- appraisal: rails60
ruby: 3.2
# Rails 6.1 supports Ruby 2.5+
- appraisal: rails61
ruby: 2.3
- appraisal: rails61
ruby: 2.4
# Rails 7 supports Ruby 2.7+
- appraisal: rails70
ruby: 2.3
- appraisal: rails70
ruby: 2.4
- appraisal: rails70
ruby: 2.5
- appraisal: rails70
ruby: 2.6
# Rails 7.1 supports Ruby 2.7+
- appraisal: rails71
ruby: 2.3
- appraisal: rails71
ruby: 2.4
- appraisal: rails71
ruby: 2.5
- appraisal: rails71
ruby: 2.6
services:
postgres:
image: postgres
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: audited_test
ports:
- 5432:5432
# needed because the postgres container does not provide a healthcheck
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
env:
DB_DATABASE: audited_test
DB_USER: root
DB_PASSWORD: 'root'
DB_HOST: localhost
steps:
- name: Setup MySQL
run: |
sudo /etc/init.d/mysql start
mysql -e 'CREATE DATABASE audited_test;' -uroot -proot
mysql -e 'SHOW DATABASES;' -uroot -proot
- uses: actions/checkout@v3
- name: Copy Gemfile
run: sed 's/\.\././' gemfiles/${{ matrix.appraisal }}.gemfile > Gemfile
- name: Set up Ruby ${{ matrix.ruby }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run tests
env:
DB: ${{ matrix.db }}
run: bundle exec rake