Skip to content

CI against Ruby 3.3 #129

CI against Ruby 3.3

CI against Ruby 3.3 #129

Workflow file for this run

name: Tests
on:
push:
pull_request:
jobs:
build:
if: "contains(github.event.commits[0].message, '[ci skip]') == false"
continue-on-error: ${{ matrix.allow_failure || false }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-20.04]
ruby: ['3.0', 2.7, 2.6, jruby-9.1.17.0, truffleruby]
gemfile:
[
norails,
rails_4.2,
rails_4.2_mongoid_5,
rails_5.2,
rails_6.0,
rails_6.1,
]
redis-version: [6]
mongodb-version: [5]
include:
- ruby: '3.0'
gemfile: rails_6.0
os: ubuntu-20.04
redis-version: 6
mongodb-version: 5
- ruby: '3.0'
gemfile: rails_6.1
os: ubuntu-20.04
redis-version: 6
mongodb-version: 5
- ruby: 3.1
gemfile: rails_7.0
os: ubuntu-20.04
redis-version: 6
mongodb-version: 5
- ruby: 3.2
gemfile: rails_7.0
os: ubuntu-20.04
redis-version: 6
mongodb-version: 5
- ruby: 3.3
gemfile: rails_7.0
os: ubuntu-20.04
redis-version: 6
mongodb-version: 5
- ruby: 3.1
gemfile: rails_7.1
os: ubuntu-20.04
redis-version: 6
mongodb-version: 5
- ruby: 3.2
gemfile: rails_7.1
os: ubuntu-20.04
redis-version: 6
mongodb-version: 5
- ruby: 3.3
gemfile: rails_7.1
os: ubuntu-20.04
redis-version: 6
mongodb-version: 5
exclude:
- ruby: '3.0'
gemfile: rails_5.2
- ruby: '3.0'
gemfile: rails_4.2
- ruby: '3.0'
gemfile: rails_4.2_mongoid_5
- ruby: 2.7
gemfile: rails_5.2
- ruby: 2.7
gemfile: rails_4.2
- ruby: 2.7
gemfile: rails_4.2_mongoid_5
- ruby: 2.6
gemfile: rails_4.2_mongoid_5
- ruby: 2.6
gemfile: rails_4.2
- ruby: jruby-9.1.17.0
gemfile: norails
- ruby: jruby-9.1.17.0
gemfile: rails_5.2
- ruby: jruby-9.1.17.0
gemfile: rails_6.1
- ruby: truffleruby
gemfile: rails_4.2
- ruby: truffleruby
gemfile: rails_4.2_mongoid_5
- ruby: truffleruby
gemfile: rails_5.2
- ruby: truffleruby
gemfile: rails_6.1
allow_failures:
- false
env:
BUNDLE_GEMFILE: gemfiles/${{ matrix.gemfile }}.gemfile
ALLOW_FAILURES: "${{ matrix.allow_failures }}"
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- name: Install dependencies
run: |
mkdir /tmp/dynamodb
wget -O - https://s3-ap-southeast-1.amazonaws.com/dynamodb-local-singapore/dynamodb_local_latest.tar.gz | tar xz --directory /tmp/dynamodb
java -Djava.library.path=/tmp/dynamodb/DynamoDBLocal_lib -jar /tmp/dynamodb/DynamoDBLocal.jar -inMemory -delayTransientStatuses -port 30180 &
mongod --version
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Setup project
run: bundle install
- name: Start Redis
uses: supercharge/redis-github-action@1.2.0
with:
redis-version: ${{ matrix.redis-version }}
- name: Start MongoDB
uses: supercharge/mongodb-github-action@1.6.0
with:
mongodb-version: ${{ matrix.mongodb-version }}
# - name: Setup DynamoDB Local
# uses: rrainn/dynamodb-action@v2.0.0
# with:
# port: 8000
# cors: '*'
- name: Run specs
run: bundle exec rspec spec
- name: Run test
run: bundle exec rake test
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v2
with:
fail_ci_if_error: false