Skip to content

Mfl/car camping

Mfl/car camping #496

Workflow file for this run

# .github/workflows/main.yaml
name: "TicketBooth CI: RSpec"
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
main:
name: RSpec
runs-on: ubuntu-latest
# If you need DB like MySQL then define service below.
# Example for PostgreSQL and Redis can be found here:
# https://github.com/actions/example-services/tree/master/.github/workflows
services:
postgresql:
image: postgres
env:
POSTGRES_USER: "postgres"
POSTGRES_PASSWORD: ""
POSTGRES_HOST_AUTH_METHOD: "trust"
ports:
- 5432:5432
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
redis:
image: redis
ports:
- 6379:6379
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5
steps:
- uses: niden/actions-memcached@v7
- run: sudo sh -c 'echo "deb https://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
- run: wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
- run: sudo apt-get update -yqq
- run: sudo apt-get install -yqq netcat libpq-dev postgresql-client-16
- name: "Verify Memcached is running"
run: echo -e "stats\nquit" | nc localhost 11211 | grep -e "accepting_conns 1" -q
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: '3.2.3'
bundler-cache: true
- shell: bash
env:
RAILS_MASTER_KEY: ${{ secrets.RAILS_MASTER_KEY }}
run: echo -n "${RAILS_MASTER_KEY}" > config/master.key
- name: "Check master key"
run: cat config/master.key | wc
- name: "Create and migrate the DB"
run: |
bin/rails db:create
bin/rails db:migrate:with_data
bin/rails db:test:prepare
- name: "Run Rspec"
run: bundle exec rspec