Skip to content

Commit

Permalink
Refine CI (#4380)
Browse files Browse the repository at this point in the history
Refine CI settings:

* Unify CI settings for each platforms to one file
* Don't run CI for Ruby head on each push/pull_request event
    * Because Ruby head is continually changed and not released
      yet, running CI one shot isn't so meaningful.
    * Instead run it regularly on every Sunday.
* Add TESTOPT=-v to all platfroms
    * It's useful to investigate when a test is stalled.
* Remove a hack for Ruby 3.0 on Windows
    * It seems no longer needed.

Signed-off-by: Takuro Ashie <[email protected]>
  • Loading branch information
ashie authored and daipom committed Mar 11, 2024
1 parent 0d2cd95 commit 7b7116c
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 96 deletions.
34 changes: 0 additions & 34 deletions .github/workflows/macos-test.yaml

This file was deleted.

31 changes: 31 additions & 0 deletions .github/workflows/test-ruby-head.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Test

on:
schedule:
- cron: '11 14 * * 0'
workflow_dispatch:

jobs:
test:
runs-on: ${{ matrix.os }}
continue-on-error: true
strategy:
fail-fast: false
matrix:
os: ['ubuntu-latest', 'macos-latest', 'windows-latest']
ruby-version: ['head']

name: Ruby ${{ matrix.ruby-version }} on ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
- name: Install addons
if: ${{ matrix.os == 'ubuntu-latest' }}
run: sudo apt-get install libgmp3-dev libcap-ng-dev
- name: Install dependencies
run: bundle install
- name: Run tests
run: bundle exec rake test TESTOPTS=-v
22 changes: 9 additions & 13 deletions .github/workflows/linux-test.yaml → .github/workflows/test.yaml
Original file line number Diff line number Diff line change
@@ -1,36 +1,32 @@
name: Testing on Ubuntu
name: Test

on:
push:
branches: [master, v1.16]
branches: [v1.16]
pull_request:
branches: [master, v1.16]
branches: [v1.16]

jobs:
test:
runs-on: ${{ matrix.os }}
continue-on-error: ${{ matrix.experimental }}
continue-on-error: false
strategy:
fail-fast: false
matrix:
ruby-version: ['3.2', '3.1', '3.0', '2.7']
os: [ubuntu-latest]
experimental: [false]
include:
- ruby-version: head
os: ubuntu-latest
experimental: true
os: ['ubuntu-latest', 'macos-latest', 'windows-latest']
ruby-version: ['3.3', '3.2', '3.1', '3.0', '2.7']

name: Unit testing with Ruby ${{ matrix.ruby-version }} on ${{ matrix.os }}
name: Ruby ${{ matrix.ruby-version }} on ${{ matrix.os }}
steps:
- uses: actions/checkout@v3
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
- name: Install addons
if: ${{ matrix.os == 'ubuntu-latest' }}
run: sudo apt-get install libgmp3-dev libcap-ng-dev
- name: Install dependencies
run: bundle install
- name: Run tests
run: bundle exec rake test
run: bundle exec rake test TESTOPTS=-v
49 changes: 0 additions & 49 deletions .github/workflows/windows-test.yaml

This file was deleted.

0 comments on commit 7b7116c

Please sign in to comment.