ignore common bundler files #296
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: build | |
on: | |
push: | |
pull_request: | |
branches: | |
- latest | |
- release | |
schedule: | |
- cron: '18 6 * * 2' | |
jobs: | |
matrix-builds: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
ruby: ['2.6', '2.7', '3.0', '3.1', '3.2', '3.3', 'jruby', 'truffleruby-head'] | |
name: ruby ${{ matrix.ruby }} | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- uses: ruby/setup-ruby@a2bbe5b1b236842c1cb7dd11e8e3b51e0a616acc # v1.202.0 | |
with: | |
ruby-version: ${{ matrix.ruby }} | |
- name: Install Dependencies | |
run: | | |
bundle install --without development | |
- name: Run Tests | |
run: bundle exec rake test | |
- name: Upload to Codecov | |
uses: codecov/codecov-action@84508663e988701840491b86de86b666e8a86bed # v4.3.0 | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
with: | |
file: coverage/coverage.xml | |
- name: Build Gem | |
run: gem build wrapture.gemspec | |
- name: Install Gem | |
run: gem install wrapture | |
cpp: | |
runs-on: ubuntu-latest | |
name: c++ runtime tests | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- uses: ruby/setup-ruby@a2bbe5b1b236842c1cb7dd11e8e3b51e0a616acc # v1.202.0 | |
with: | |
ruby-version: '3.3' | |
- name: Install Ruby Dependencies | |
run: bundle install --without development | |
- name: Run C++ Examples | |
run: bundle exec rake examples:cpp | |
python: | |
runs-on: ubuntu-latest | |
name: python runtime tests | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- uses: ruby/setup-ruby@a2bbe5b1b236842c1cb7dd11e8e3b51e0a616acc # v1.202.0 | |
with: | |
ruby-version: '3.3' | |
- name: Install Ruby Dependencies | |
run: bundle install --without development | |
- uses: actions/setup-python@0a5c61591373683505ea898e09a3ea4f39ef2b9c # v5.0.0 | |
with: | |
python-version: '3.12' | |
- name: Install Prereqs | |
run: pip3 install build setuptools | |
- name: Run Python Tests | |
run: bundle exec rake test:python | |
- name: Run Python Examples | |
run: bundle exec rake examples:python | |
docker: | |
runs-on: ubuntu-latest | |
name: docker build | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- uses: docker/setup-buildx-action@c47758b77c9736f4b2ef4073d4d51994fabfe349 # v3.7.1 | |
- uses: docker/build-push-action@4f58ea79222b3b9dc2c8bbdd6debcef730109a75 # v6.9.0 | |
with: | |
file: 'tools/docker/Dockerfile' | |
push: false | |
tags: 'wrapture' | |
sonar-analysis: | |
runs-on: ubuntu-latest | |
name: SonarCloud analysis | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- uses: sonarsource/sonarcloud-github-action@49e6cd3b187936a73b8280d59ffd9da69df63ec9 # v2.1.1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | |
SONARQUBE_SCANNER_PARAMS: '{"sonar.host.url":"https://sonarcloud.io"}' | |
code-analysis: | |
runs-on: ubuntu-latest | |
name: ruby analysis | |
steps: | |
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
- uses: ruby/setup-ruby@a2bbe5b1b236842c1cb7dd11e8e3b51e0a616acc # v1.202.0 | |
with: | |
ruby-version: '3.3' | |
- name: Install Dependencies | |
run: bundle install | |
- name: Run Rubocop | |
run: bundle exec rubocop --parallel | |
- name: Check RBS | |
run: rbs -I sig/ -r pathname validate | |
- name: Check RDoc Coverage | |
run: bundle exec rdoc --coverage-report lib |