v3.4.1 #356
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: RJIT | |
on: | |
push: | |
paths-ignore: | |
- 'doc/**' | |
- '**.md' | |
- '**.rdoc' | |
- '**/.document' | |
- '**.[1-8]' | |
- '**.ronn' | |
- '.*.yml' | |
pull_request: | |
paths-ignore: | |
- 'doc/**' | |
- '**.md' | |
- '**.rdoc' | |
- '**/.document' | |
- '**.[1-8]' | |
- '**.ronn' | |
- '.*.yml' | |
merge_group: | |
concurrency: | |
group: ${{ github.workflow }} / ${{ startsWith(github.event_name, 'pull') && github.ref_name || github.sha }} | |
cancel-in-progress: ${{ startsWith(github.event_name, 'pull') }} | |
permissions: | |
contents: read | |
jobs: | |
make: | |
strategy: | |
matrix: | |
# main variables included in the job name | |
test_task: [check] | |
run_opts: ['--rjit-call-threshold=1'] | |
arch: [''] | |
fail-fast: false | |
env: | |
GITPULLOPTIONS: --no-tags origin ${{ github.ref }} | |
RUBY_DEBUG: ci | |
SETARCH: ${{ matrix.arch && format('setarch {0}', matrix.arch) }} | |
runs-on: ubuntu-22.04 | |
if: >- | |
${{!(false | |
|| contains(github.event.head_commit.message, '[DOC]') | |
|| contains(github.event.head_commit.message, 'Document') | |
|| contains(github.event.pull_request.title, '[DOC]') | |
|| contains(github.event.pull_request.title, 'Document') | |
|| contains(github.event.pull_request.labels.*.name, 'Documentation') | |
|| (github.event_name == 'push' && github.event.pull_request.user.login == 'dependabot[bot]') | |
)}} | |
steps: | |
- uses: actions/checkout@d632683dd7b4114ad314bca15554477dd762a938 # v4.2.0 | |
with: | |
sparse-checkout-cone-mode: false | |
sparse-checkout: /.github | |
- uses: ./.github/actions/setup/ubuntu | |
- uses: ./.github/actions/setup/directories | |
with: | |
srcdir: src | |
builddir: build | |
makeup: true | |
# Set fetch-depth: 10 so that Launchable can receive commits information. | |
fetch-depth: 10 | |
- name: Run configure | |
env: | |
arch: ${{ matrix.arch }} | |
run: >- | |
$SETARCH ../src/configure -C --disable-install-doc cppflags=-DRUBY_DEBUG | |
${arch:+--target=$arch-$OSTYPE --host=$arch-$OSTYPE} | |
- run: $SETARCH make | |
- name: Set up Launchable | |
uses: ./.github/actions/launchable/setup | |
with: | |
os: ubuntu-22.04 | |
launchable-token: ${{ secrets.LAUNCHABLE_TOKEN }} | |
builddir: build | |
srcdir: src | |
test-opts: ${{ matrix.run_opts }} | |
test-tasks: '["test", "test-all", "test-spec"]' | |
continue-on-error: true | |
- name: make test | |
run: | | |
$SETARCH make -s test RUN_OPTS="$RUN_OPTS" | |
timeout-minutes: 30 | |
env: | |
GNUMAKEFLAGS: '' | |
RUBY_TESTOPTS: >- | |
${{ env.TESTS }} | |
--tty=no | |
RUN_OPTS: ${{ matrix.run_opts }} | |
- name: make test-all | |
run: >- | |
$SETARCH make -s test-all | |
RUN_OPTS="$RUN_OPTS" | |
${TESTS:+TESTS="$TESTS"} | |
timeout-minutes: 60 | |
env: | |
GNUMAKEFLAGS: '' | |
RUBY_TESTOPTS: '-q --tty=no' | |
RUN_OPTS: ${{ matrix.run_opts }} | |
- name: make test-spec | |
run: | | |
$SETARCH make -s test-spec RUN_OPTS="$RUN_OPTS" | |
timeout-minutes: 10 | |
env: | |
GNUMAKEFLAGS: '' | |
RUN_OPTS: ${{ matrix.run_opts }} | |
- uses: ./.github/actions/slack | |
with: | |
label: ${{ matrix.run_opts }} | |
SLACK_WEBHOOK_URL: ${{ secrets.SIMPLER_ALERTS_URL }} # ruby-lang slack: ruby/simpler-alerts-bot | |
if: ${{ failure() }} | |
defaults: | |
run: | |
working-directory: build |