Add Github Actions CI configuration
Based on: https://github.com/ruby/setup-ruby Re: #60 Some notes on the initial Github Actions config: 1. Set min ruby version to 2.5 in order to support JRuby, which as of 9.2.17.0 has a RUBY_VERSION of 2.5. 2. For CodeCov exclude JRuby and TruffleRuby, to avoid errors sending the results in Github Actions on those jobs rather than debugging them further. 3. Plan is to next remove Travis CI, and then to convert the CodeCov config to use the Github Action for CodeCov (thanks @taichi-ishitani for this suggestion!)
This commit is contained in:
parent
bcc9d78da0
commit
5455d69af6
|
@ -0,0 +1,26 @@
|
|||
name: Main
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
jobs:
|
||||
test:
|
||||
name: 'CI Tests'
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest]
|
||||
# Due to https://github.com/actions/runner/issues/849, we have to use quotes for '3.0'
|
||||
ruby: [jruby, truffleruby, 2.5, 2.6, 2.7, '3.0', head]
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: ${{ matrix.ruby }}
|
||||
bundler-cache: false
|
||||
- run: bundle install
|
||||
- run: bundle exec rspec
|
2
Gemfile
2
Gemfile
|
@ -1,7 +1,7 @@
|
|||
source "https://rubygems.org"
|
||||
|
||||
# Travis-only dependencies go here
|
||||
if ENV["CI"] == "true"
|
||||
if ENV["CI"] == "true" && RUBY_ENGINE == "ruby"
|
||||
gem "codecov", require: false, group: "test"
|
||||
end
|
||||
|
||||
|
|
17
README.md
17
README.md
|
@ -7,6 +7,7 @@
|
|||
[![Yard Docs](http://img.shields.io/badge/yard-docs-blue.svg)](http://rubydoc.info/github/ms-ati/docile)
|
||||
[![Docs Coverage](http://inch-ci.org/github/ms-ati/docile.png)](http://inch-ci.org/github/ms-ati/docile)
|
||||
|
||||
[![Build Status](https://github.com/ms-ati/docile/actions/workflows/main.yml/badge.svg)](https://github.com/ms-ati/docile/actions/workflows/main.yml)
|
||||
[![Build Status](https://img.shields.io/travis/ms-ati/docile/master.svg)](https://travis-ci.org/ms-ati/docile)
|
||||
[![Code Coverage](https://img.shields.io/codecov/c/github/ms-ati/docile.svg)](https://codecov.io/github/ms-ati/docile)
|
||||
[![Maintainability](https://api.codeclimate.com/v1/badges/79ca631bc123f7b83b34/maintainability)](https://codeclimate.com/github/ms-ati/docile/maintainability)
|
||||
|
@ -351,13 +352,20 @@ $ gem install docile
|
|||
|
||||
## Status
|
||||
|
||||
Works on [all currently supported ruby versions](https://github.com/ms-ati/docile/blob/master/.travis.yml), or so Travis CI [tells us](https://travis-ci.org/ms-ati/docile).
|
||||
Works on [all currently supported ruby versions](https://github.com/ms-ati/docile/blob/master/.github/workflows/main.yml),
|
||||
or so [Github Actions](https://github.com/ms-ati/docile/actions)
|
||||
and [Travis CI](https://travis-ci.org/ms-ati/docile)
|
||||
tell us.
|
||||
|
||||
Used by some pretty cool gems to implement their DSLs, notably including [SimpleCov](https://github.com/colszowka/simplecov). Keep an eye out for new gems using Docile at the [Ruby Toolbox](https://www.ruby-toolbox.com/projects/docile).
|
||||
Used by some pretty cool gems to implement their DSLs, notably including
|
||||
[SimpleCov](https://github.com/colszowka/simplecov). Keep an eye out for new
|
||||
gems using Docile at the
|
||||
[Ruby Toolbox](https://www.ruby-toolbox.com/projects/docile).
|
||||
|
||||
## Release Policy
|
||||
|
||||
Docile releases follow [Semantic Versioning 2.0.0](https://semver.org/spec/v2.0.0.html).
|
||||
Docile releases follow
|
||||
[Semantic Versioning 2.0.0](https://semver.org/spec/v2.0.0.html).
|
||||
|
||||
## Note on Patches/Pull Requests
|
||||
|
||||
|
@ -376,4 +384,5 @@ Docile releases follow [Semantic Versioning 2.0.0](https://semver.org/spec/v2.0.
|
|||
|
||||
Copyright (c) 2012-2021 Marc Siegel.
|
||||
|
||||
Licensed under the [MIT License](http://choosealicense.com/licenses/mit/), see [LICENSE](LICENSE) for details.
|
||||
Licensed under the [MIT License](http://choosealicense.com/licenses/mit/),
|
||||
see [LICENSE](LICENSE) for details.
|
||||
|
|
|
@ -23,8 +23,8 @@ Gem::Specification.new do |s|
|
|||
end
|
||||
s.require_paths = ["lib"]
|
||||
|
||||
# Specify oldest supported Ruby version
|
||||
s.required_ruby_version = ">= 2.6.0"
|
||||
# Specify oldest supported Ruby version (2.5 to support JRuby 9.2.17.0)
|
||||
s.required_ruby_version = ">= 2.5.0"
|
||||
|
||||
s.add_development_dependency "rake", "~> 12.3.3"
|
||||
s.add_development_dependency "rspec", "~> 3.9"
|
||||
|
|
|
@ -6,8 +6,8 @@ begin
|
|||
add_filter "/vendor/" # exclude gems which are vendored on Travis CI
|
||||
end
|
||||
|
||||
# On CI we publish simplecov results to codecov.io
|
||||
if ENV["CI"] == "true"
|
||||
# On CI we publish coverage to codecov.io, except on JRuby and TruffleRuby
|
||||
if ENV["CI"] == "true" && RUBY_ENGINE == "ruby"
|
||||
require "codecov"
|
||||
SimpleCov.formatter = SimpleCov::Formatter::Codecov
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue