Skip to content

Update continuous integration and experimental ruby builds #20

Update continuous integration and experimental ruby builds

Update continuous integration and experimental ruby builds #20

name: Continuous Integration
on:
push:
branches: [main]
pull_request:
branches: [main]
workflow_dispatch:
# Supported platforms / Ruby versions:
# - Ubuntu: MRI (3.1, 3.2, 3.3), TruffleRuby (24), JRuby (9.4)
# - Windows: MRI (3.1), JRuby (9.4)
jobs:
build:
name: Ruby ${{ matrix.ruby }} on ${{ matrix.operating-system }}
runs-on: ${{ matrix.operating-system }}
continue-on-error: true
strategy:
fail-fast: false
matrix:
ruby: ["3.1", "3.2", "3.3", "jruby-9.4", "truffleruby-24"]
operating-system: [ubuntu-latest]
include:
- ruby: "3.1"
operating-system: windows-latest
- ruby: "jruby-9.4"
operating-system: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Initialize Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Run rake
run: bundle exec rake
coverage:
name: Report test coverage to CodeClimate
needs: [build]
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Initialize Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: 3.1
bundler-cache: true
- name: Report test coverage
uses: paambaati/codeclimate-action@v9
env:
CC_TEST_REPORTER_ID: 59b5645f30f1d2737a5811628e315c026c5ea2aeced2d77dae4b7b394a85e966
with:
coverageCommand: bundle exec rake spec
coverageLocations: ${{github.workspace}}/coverage/lcov/*.lcov:lcov