diff --git a/.github/workflows/next-rails.yml b/.github/workflows/next-rails.yml new file mode 100644 index 00000000..4d0aac83 --- /dev/null +++ b/.github/workflows/next-rails.yml @@ -0,0 +1,43 @@ +name: Next-rails + +on: + pull_request: + branches: + - master + workflow_dispatch: + +jobs: + next-rails: + if: contains(github.head_ref, 'next-rails') + runs-on: ubuntu-latest + name: next-rails + env: + OSEM_DB_ADAPTER: sqlite3 + RAILS_ENV: test + strategy: + matrix: + suite: [models, features, controllers, ability, leftovers] + fail-fast: false + steps: + - uses: actions/checkout@v2 + - name: Sets env vars for next-rails + run: | + echo "BUNDLE_GEMFILE=Gemfile.next" >> $GITHUB_ENV + echo "BUNDLE_CACHE_PATH=vendor/cache.next" >> $GITHUB_ENV + - uses: ruby/setup-ruby@v1 + with: + ruby-version: 2.5 + bundler-cache: true + - name: Prepare spec + run: | + rm -f osem_test osem_development + bundle exec rake db:setup --trace + bundle exec bin/rails webdrivers:chromedriver:update + - name: spec/${{ matrix.suite }} + run: bundle exec rake spec:${{ matrix.suite }} + - name: coverage upload ${{ matrix.suite }} + uses: codacy/codacy-coverage-reporter-action@master + if: github.ref == 'refs/heads/master' + with: + project-token: ${{ secrets.CODACY_PROJECT_TOKEN }} + coverage-reports: coverage/coverage.xml