.github/workflows/main.yml
name: CI
# Controls when the action will run.
# Github Actions multiple gemfile support?
on:
# Triggers the workflow on push or pull request events but only for the master branch
push:
branches: [main]
pull_request:
branches: [main]
jobs:
test:
strategy:
fail-fast: false
matrix:
# need to figure out how to use redis on macos github actions
# os: [ubuntu, macos]
os: [ubuntu]
# remove until I sort out CI issues for truffle
# truffleruby,
# truffleruby-head,
# removing jruby again to flaky
gemfile: [ Gemfile.rails6.0, Gemfile.rails6.1, Gemfile.rails7.0, Gemfile.rails7.1 ]
# need to add support for multiple gemfiles
ruby: ["2.7", "3.0", "3.1", "3.2", "3.3"]
redis-version: [4, 5, 6, 7]
runs-on: ${{ matrix.os }}-latest
steps:
- uses: actions/checkout@v4
- uses: supercharge/redis-github-action@1.8.0
with:
redis-version: ${{ matrix.redis-version }}
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- run: bundle exec standardrb
- run: bundle exec rake
- run: "RUBYOPT='--enable=frozen-string-literal --debug=frozen-string-literal' bundle exec rake"