Skip to content

Refactor on_grace_period? implementation #1542

Refactor on_grace_period? implementation

Refactor on_grace_period? implementation #1542

Workflow file for this run

name: Tests
on:
pull_request:
branches:
- '*'
push:
branches:
- master
jobs:
sqlite:
runs-on: ubuntu-latest
strategy:
matrix:
ruby: ['2.7', '3.0', '3.1', '3.2']
gemfile:
- rails_6
- rails_6_1
- rails_7
- rails_main
exclude:
# Rails 7.1 requires Ruby 3.0 or higher
- ruby: '2.7'
gemfile: rails_main
# Rails 6 does not support Ruby 3.2
- ruby: '3.2'
gemfile: rails_6
env:
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
BUNDLE_PATH_RELATIVE_TO_CWD: true
steps:
- name: SQLite3 version
run: sqlite3 --version
- uses: actions/checkout@v3
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler: default
bundler-cache: true
rubygems: latest
- name: StandardRb check
run: bundle exec standardrb
- name: Run tests
env:
DATABASE_URL: "sqlite3:pay_test"
STRIPE_PRIVATE_KEY: ${{ secrets.STRIPE_PRIVATE_KEY }}
run: |
bin/rails db:test:prepare
bin/rails test
postgres:
runs-on: ubuntu-latest
strategy:
matrix:
ruby: ['2.7', '3.0', '3.1', '3.2']
gemfile:
- rails_6
- rails_6_1
- rails_7
- rails_main
exclude:
# Rails 7.1 requires Ruby 3.0 or higher
- ruby: '2.7'
gemfile: rails_main
# Rails 6 does not support Ruby 3.2
- ruby: '3.2'
gemfile: rails_6
env:
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
BUNDLE_PATH_RELATIVE_TO_CWD: true
services:
postgres:
image: postgres:14
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: password
POSTGRES_DB: test
ports: ['5432:5432']
steps:
- uses: actions/checkout@v3
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler: default
bundler-cache: true
rubygems: latest
- name: StandardRb check
run: bundle exec standardrb
- name: Run tests
env:
STRIPE_PRIVATE_KEY: ${{ secrets.STRIPE_PRIVATE_KEY }}
DATABASE_URL: postgres://postgres:password@localhost:5432/test
run: |
bin/rails db:test:prepare
bin/rails test
mysql:
runs-on: ubuntu-latest
strategy:
matrix:
ruby: ['2.7', '3.0', '3.1', '3.2']
gemfile:
- rails_6
- rails_6_1
- rails_7
- rails_main
exclude:
# Rails 7.1 requires Ruby 3.0 or higher
- ruby: '2.7'
gemfile: rails_main
# Rails 6 does not support Ruby 3.2
- ruby: '3.2'
gemfile: rails_6
env:
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
BUNDLE_PATH_RELATIVE_TO_CWD: true
services:
mysql:
image: mysql:8
env:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: test
ports: ['3306:3306']
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
steps:
- uses: actions/checkout@v3
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler: default
bundler-cache: true
rubygems: latest
- name: StandardRb check
run: bundle exec standardrb
- name: Run tests
env:
STRIPE_PRIVATE_KEY: ${{ secrets.STRIPE_PRIVATE_KEY }}
DATABASE_URL: mysql2://root:password@127.0.0.1:3306/test
run: |
bin/rails db:test:prepare
bin/rails test