Skip to content

Experimental support for multi-threaded profiling using Vernier #2387

Experimental support for multi-threaded profiling using Vernier

Experimental support for multi-threaded profiling using Vernier #2387

name: sentry-resque Test
on:
workflow_dispatch:
push:
branches:
- master
- \d+-\d+
pull_request:
# Cancel in progress workflows on pull_requests.
# https://docs.github.com/en/actions/using-jobs/using-concurrency#example-using-a-fallback-value
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
ruby-versions:
uses: ruby/actions/.github/workflows/ruby_versions.yml@master
with:
engine: cruby-jruby
min_version: 2.4
test:
needs: ruby-versions
defaults:
run:
working-directory: sentry-resque
name: Ruby ${{ matrix.ruby_version }}, options - ${{ toJson(matrix.options) }}
runs-on: ubuntu-latest
strategy:
matrix:
ruby_version: ${{ fromJson(needs.ruby-versions.outputs.versions) }}
include:
- {
ruby_version: "3.2",
options:
{
rubyopt: "--enable-frozen-string-literal --debug=frozen-string-literal",
},
}
- { ruby_version: "3.2", options: { codecov: 1 } }
steps:
- uses: actions/checkout@v1
- name: Set up Ruby ${{ matrix.ruby_version }}
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby_version }}
bundler-cache: true
- name: Start Redis
uses: supercharge/[email protected]
with:
redis-version: 5
- name: Run specs
env:
RUBYOPT: ${{ matrix.options.rubyopt }}
run: |
bundle install --jobs 4 --retry 3
bundle exec rake
- name: Run specs with Rails
env:
BUNDLE_GEMFILE: Gemfile_with_rails.rb
RUBYOPT: ${{ matrix.options.rubyopt }}
run: |
bundle install --jobs 4 --retry 3
bundle exec rake
- name: Upload Coverage
if: ${{ matrix.options.codecov }}
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}