Skip to content

Ship JRuby gem pre-built #5

Ship JRuby gem pre-built

Ship JRuby gem pre-built #5

Workflow file for this run

name: Build Gems
on:
push:
pull_request:
release:
types:
- published
jobs:
build:
runs-on: ${{ matrix.os }}
timeout-minutes: 10
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
ruby-version:
- 'head'
- '3.4'
- '3.3'
- '3.2'
- '3.1'
- '3.0'
- '2.7'
- '2.6'
- '2.5'
- '2.4'
- '2.3'
- '2.2'
- '2.1'
- '2.1.0'
- '2.0.0'
- '1.9'
- '1.9.3'
- '1.9.2'
# - '1.8(.7)'
- 'jruby-head'
- 'jruby-9.4'
- 'jruby-9.3'
- 'jruby-9.2'
- 'jruby-9.1'
# - 'jruby-1[89]mode'
- truffleruby-24
- truffleruby-23
- truffleruby-22
- truffleruby-21
- truffleruby-20
- truffleruby-19
- truffleruby+graalvm-24
- truffleruby+graalvm-23
- truffleruby+graalvm-22
- truffleruby+graalvm-21
# - rbx ?
# - ree ?
defaults:
run:
shell: /bin/bash --noprofile --norc -Eeuxo pipefail {0}
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
bundler-cache: true
- name: Slugify GITHUB_REPOSITORY
run: echo "GITHUB_REPOSITORY_SLUG=${GITHUB_REPOSITORY////_}" >> $GITHUB_ENV
- name: Build Extensions and Test
run: bundle exec rake
- name: Build Gem
run: gem build "${{ github.event.repository.name }}.gemspec"
- name: Create artifacts
uses: actions/upload-artifact@v4
if: ${{ !cancelled() }}
with:
name: ${{ env.GITHUB_REPOSITORY_SLUG }}_${{ github.event_name }}_${{ github.event.pull_request.number || github.sha }}_${{ matrix.os
}}_ruby-${{ matrix.ruby-version }}_gems
path: ${{ github.event.repository.name }}-*.gem