.github/workflows/rails_main_testing.yml
name: Test against Rails main
on:
schedule:
- cron: "0 0 * * *" # Run every day at 00:00 UTC
workflow_dispatch:
push:
jobs:
specs:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
ruby-version:
- "3.3"
gemfile:
- rails_main
name: Ruby ${{ matrix.ruby-version }}, ${{ matrix.gemfile }}
env:
BUNDLE_GEMFILE: gemfiles/${{ matrix.gemfile }}.gemfile
steps:
- uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
bundler-cache: true
- name: RSpec
run: bundle exec rspec
specs_successful:
name: Rails Main Specs passing?
needs: specs
if: always()
runs-on: ubuntu-latest
steps:
- run: |
if ${{ needs.specs.result == 'success' }}
then
echo "All specs pass"
else
echo "Some specs failed"
false
fi