mirror of
https://github.com/aasm/aasm
synced 2023-03-27 23:22:41 -04:00
88 lines
2.7 KiB
YAML
88 lines
2.7 KiB
YAML
|
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.1]
|
||
|
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
|
||
|
redis-version: [6]
|
||
|
mongodb-version: [5]
|
||
|
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
|