Skip to content

RSpec

RSpec #20

Workflow file for this run

name: RSpec
on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch: {}
schedule:
- cron: "0 21 * * 6"
permissions:
contents: read
env:
CI: "true"
SE_AVOID_STATS: "true"
jobs:
rspec:
runs-on: ubuntu-24.04
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
ruby: ["3.4"]
mongodb-version: ["6.0", "7.0", "8.0"]
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@f4a75cfd619ee5ce8d5b864b0d183aff3c69b55a # v2.13.1
with:
disable-sudo: true
egress-policy: audit
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
- name: Set up Ruby
uses: ruby/setup-ruby@ab177d40ee5483edb974554986f56b33477e21d0 # v1.265.0
with:
ruby-version: ${{ matrix.ruby }}
rubygems: "latest"
bundler: "latest"
bundler-cache: true
- name: Start MongoDB
uses: supercharge/mongodb-github-action@90004df786821b6308fb02299e5835d0dae05d0d # 1.12.0
with:
mongodb-version: ${{ matrix.mongodb-version }}
- run: bundle exec bootsnap precompile --gemfile
- run: bundle exec bootsnap precompile app/ lib/ config/ Rakefile
- run: bundle exec rails zeitwerk:check
- run: bundle exec rails assets:precompile
- run: bundle exec rake errbit:bootstrap
- run: bundle exec rspec