mirror of
https://github.com/ditkrg/rswag.git
synced 2026-01-22 22:06:43 +00:00
67 lines
1.6 KiB
YAML
67 lines
1.6 KiB
YAML
# This workflow uses actions that are not certified by GitHub.
|
|
# They are provided by a third-party and are governed by
|
|
# separate terms of service, privacy policy, and support
|
|
# documentation.
|
|
# This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
|
|
# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
|
|
|
|
name: Ruby
|
|
|
|
on:
|
|
push:
|
|
branches: [ master ]
|
|
pull_request:
|
|
branches: [ master ]
|
|
|
|
jobs:
|
|
test:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
ruby: [2.6, 2.7]
|
|
rails: [5.2.4.4, 6.0.3.4]
|
|
env:
|
|
RAILS_VERSION: ${{ matrix.rails }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- uses: ruby/setup-ruby@v1
|
|
with: { ruby-version: 2.6 }
|
|
|
|
- uses: actions/cache@v2
|
|
id: cache
|
|
with:
|
|
path: |
|
|
rswag-ui/node_modules
|
|
vendor/bundle
|
|
key: ${{ runner.os }}-ruby-${{ matrix.ruby }}-rails-${{ matrix.rails }}-${{ hashFiles('**/Gemfile.lock', '**/yarn.lock') }}
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
bundle install
|
|
cd rswag-ui && npm install
|
|
|
|
- name: rswag-api
|
|
run: |
|
|
cd rswag-api
|
|
bundle exec rspec
|
|
|
|
- name: rswag-specs
|
|
if: succeeded() || failed()
|
|
run: |
|
|
cd rswag-specs
|
|
bundle exec rspec
|
|
|
|
- name: rswag-ui
|
|
if: succeeded() || failed()
|
|
run: |
|
|
cd rswag-ui
|
|
bundle exec rspec
|
|
|
|
- name: test-app
|
|
if: succeeded() || failed()
|
|
run: |
|
|
cd test-app
|
|
bundle exec rake db:migrate db:test:prepare
|
|
bundle exec rspec
|