# 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-18.04 strategy: fail-fast: false matrix: os: [ubuntu, macos] ruby: [2.5, 2.6, 2.7, head, debug, truffleruby, truffleruby-head] steps: - uses: actions/checkout@v2 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true - name: Install dependencies run: bundle install - name: Run tests run: bundle exec rake test-jruby: runs-on: ubuntu-18.04 strategy: fail-fast: false matrix: os: [ubuntu, macos] jruby: [jruby] # TODO: Add back jruby-head once we figure out why there's a bundler mismatch steps: - uses: actions/checkout@v2 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: ${{ matrix.jruby }} bundler-cache: true - name: Install dependencies env: JRUBY_OPTS: --debug run: bundle install - name: Run tests env: JRUBY_OPTS: --debug run: bundle exec rake frozen-string-compat: runs-on: ubuntu-18.04 steps: - uses: actions/checkout@v2 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: 2.6 bundler-cache: true - name: Install dependencies run: bundle install - name: Run tests env: RUBYOPT: "--enable-frozen-string-literal" run: bundle exec rake coveralls: runs-on: ubuntu-18.04 steps: - uses: actions/checkout@v2 - name: Set up Ruby uses: ruby/setup-ruby@v1 with: ruby-version: 2.6 bundler-cache: true - name: Install dependencies run: bundle install - name: Run tests run: bundle exec rake - name: Coveralls GitHub Action uses: coverallsapp/github-action@v1.1.2 with: github-token: ${{ secrets.github_token }} path-to-lcov: './coverage/lcov/omniauth.lcov'