Skip to content

Commit 379db2c

Browse files
committed
Migrate TravisCI to GitHub Actions
This repo hasn't received much attention recently. As such, the TravisCI yaml file was referencing [EOL](https://www.ruby-lang.org/en/downloads/branches/) versions of ruby. Moreover, TravisCI itself isn't generally used for open source anymore. There are heavy restrictions on build minutes, as noted [here](jekyll/jekyll#8492) in the core Jekyll project. This PR does the following: * Removes `.travis.yml`. We won't run jobs on TravisCI anymore. * Replaces it with `.github/workflows/ci.yml`. We'll start running CI on GitHub Actions. * Updates tested Ruby versions to 2.7, 3.0, and jruby 9.3.4. This is a subset of the ruby versions currently supported/tested by [Jekyll core](https://github.com/jekyll/jekyll/blob/796ae15c31147d1980662744ef0f19a15a27cdee/.github/workflows/ci.yml#L20-L28). I plan to add support for Ruby 3.1 in a subsequent commit, but doing so will require additional code changes and I wanted to start be getting the existing code under test in CI. This makes progress toward #192. I plan to work toward supporting Ruby 3 with fast SVD support and Numo in classifier-reborn, but the first step is getting CI working with the existing code.
1 parent c0e81d2 commit 379db2c

File tree

2 files changed

+51
-33
lines changed

2 files changed

+51
-33
lines changed

.github/workflows/ci.yml

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
name: Continuous Integration
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
- "*-stable"
8+
pull_request:
9+
branches:
10+
- master
11+
- "*-stable"
12+
13+
jobs:
14+
ci:
15+
name: "Run Tests (${{ matrix.label }})"
16+
runs-on: "ubuntu-latest"
17+
env:
18+
# See https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby#matrix-of-gemfiles
19+
BUNDLE_GEMFILE: ${{ matrix.gemfile }}
20+
strategy:
21+
fail-fast: false
22+
matrix:
23+
include:
24+
- label: Ruby 2.7
25+
ruby_version: "2.7"
26+
gemfile: Gemfile
27+
- label: Ruby 3.0
28+
ruby_version: "3.0"
29+
gemfile: Gemfile
30+
# classifier-reborn requires changes to work with Ruby 3.1.
31+
# - label: Ruby 3.1
32+
# ruby_version: "3.1"
33+
# gemfile: Gemfile
34+
- label: JRuby 9.3.4.0
35+
ruby_version: "jruby-9.3.4.0"
36+
gemfile: Gemfile-jruby
37+
steps:
38+
- name: Checkout Repository
39+
uses: actions/checkout@v3
40+
- name: "Set up ${{ matrix.label }}"
41+
uses: ruby/setup-ruby@v1
42+
with:
43+
ruby-version: ${{ matrix.ruby_version }}
44+
bundler-cache: true
45+
- name: Run Minitest based tests
46+
run: bash script/test
47+
services:
48+
redis:
49+
image: redis
50+
ports:
51+
- 6379:6379

.travis.yml

Lines changed: 0 additions & 33 deletions
This file was deleted.

0 commit comments

Comments
 (0)