Skip to content

Add local dev setup & Fix CI DB connection #100

Add local dev setup & Fix CI DB connection

Add local dev setup & Fix CI DB connection #100

Workflow file for this run

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
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
# - name: Test with RSpec
# env:
# RAILS_ENV: "test"
# POSTGRES_USER: postgres
# POSTGRES_PASSWORD: postgres
# run: |
# bundle exec rspec
- name: Test with Cucumber
env:
RAILS_ENV: "test"
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
run: |
until psql --user=postgres --dbname=postgres --command "\q" >/dev/null 2>&1 || [ "$RETRIES" -eq "$MAX_RETRIES" ]; do
echo >&2 "Waiting $((RETRIES += 1))s for the \"$PGHOST\" PostgreSQL server to start. $((MAX_RETRIES - RETRIES)) remaining attempts..."
sleep "$RETRIES"
false
done || exit 1
echo "> Postgres is ready!"
bundle exec cucumber