Skip to content

Switch version in main branch to 4.0.0.dev #10537

Switch version in main branch to 4.0.0.dev

Switch version in main branch to 4.0.0.dev #10537

Workflow file for this run

name: bundler
on:
pull_request:
push:
branches:
- master
concurrency:
group: ci-${{ github.ref }}-${{ github.workflow }}
cancel-in-progress: true
permissions: # added using https://github.com/step-security/secure-workflows
contents: read
defaults:
run:
shell: bash
jobs:
bundler:
name: Bundler on ${{ matrix.os.name }} (${{ matrix.ruby.name }})
runs-on: ${{ matrix.os.value }}
strategy:
fail-fast: false
matrix:
os:
- { name: Ubuntu, value: ubuntu-24.04 }
ruby:
- { name: ruby-3.2, value: 3.2.9 }
- { name: ruby-3.3, value: 3.3.9 }
- { name: ruby-3.4, value: 3.4.5 }
include:
- { os: { name: macOS, value: macos-15 }, ruby: { name: ruby-3.2, value: 3.2.9 }, timeout: 90 }
- { os: { name: macOS, value: macos-15 }, ruby: { name: ruby-3.3, value: 3.3.9 }, timeout: 90 }
- { os: { name: macOS, value: macos-15 }, ruby: { name: ruby-3.4, value: 3.4.5 }, timeout: 90 }
- { os: { name: Windows, value: windows-2025 }, ruby: { name: ruby-3.2, value: 3.2.9 }, timeout: 150 }
- { os: { name: Windows, value: windows-2025 }, ruby: { name: ruby-3.3, value: 3.3.9 }, timeout: 150 }
- { os: { name: Windows, value: windows-2025 }, ruby: { name: ruby-3.4, value: 3.4.5 }, timeout: 150 }
- { os: { name: Ubuntu, value: ubuntu-24.04 }, ruby: { name: jruby, value: jruby-10.0.1.0 } }
- { os: { name: Windows, value: windows-2025 }, ruby: { name: jruby, value: jruby-10.0.1.0 } }
env:
RGV: ..
RUBYOPT: --disable-gems
WORKSPACE: ${{ github.workspace }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
persist-credentials: false
- name: Setup ruby
uses: ruby/setup-ruby@2a7b30092b0caf9c046252510f9273b4875f3db9 # v1.254.0
with:
ruby-version: ${{ matrix.ruby.value }}
bundler: none
- name: Setup java
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
with:
distribution: temurin
java-version: 21.0.7
if: matrix.ruby.name == 'jruby'
- uses: samypr100/setup-dev-drive@750bec535eb7e4833d6a4c86c5738751f9887575 # v3.4.2
with:
workspace-copy: true
env-mapping: |
WORKSPACE,{{ DEV_DRIVE_WORKSPACE }}
if: matrix.os.name == 'Windows'
- name: Prepare dependencies
run: |
bin/rake dev:deps
working-directory: ${{ env.WORKSPACE }}
- name: Run Test (CRuby)
run: |
bin/parallel_rspec
working-directory: ${{ env.WORKSPACE }}/bundler
if: matrix.ruby.name != 'jruby'
- name: Run Test (JRuby)
run: |
bin/parallel_rspec --tag jruby_only --tag jruby
working-directory: ${{ env.WORKSPACE }}/bundler
if: matrix.ruby.name == 'jruby' && matrix.os.name == 'Ubuntu'
- name: Run a warbler project
run: |
bin/rake bundler:install:local
cd bundler/spec/realworld/fixtures/warbler
bundle install
bundle exec warble
java -jar warbler.jar
if: matrix.ruby.name == 'jruby' && matrix.os.name == 'Ubuntu'
working-directory: ${{ env.WORKSPACE }}
timeout-minutes: ${{ matrix.timeout || 60 }}
all-pass:
name: All bundler jobs pass
if: always()
needs:
- bundler
runs-on: ubuntu-latest
steps:
- name: check dependent jobs
uses: re-actors/alls-green@05ac9388f0aebcb5727afa17fcccfecd6f8ec5fe # v1.2.2
with:
jobs: ${{ toJSON(needs) }}