Skip to content

Simplify test server #125

Simplify test server

Simplify test server #125

Workflow file for this run

# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
name: Ruby
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
test:
runs-on: ${{ matrix.os }}-latest
strategy:
fail-fast: false
matrix:
os: [ubuntu, macos]
ruby-version: ['2.6', '2.7', '3.0', '3.1', '3.2', '3.3', '3.4', head, debug, truffleruby]
continue-on-error: ${{ endsWith(matrix.ruby, 'head') || matrix.ruby == 'debug' }}
steps:
- uses: actions/checkout@v3
- name: Set up Ruby 3.4 for test server
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.4'
- name: Start test server
run: |
ruby spec/support/server.rb &
sleep 5
curl -f http://localhost:3001/ || (sleep 5 && curl -f http://localhost:3001/)
- name: Install libcurl header
run: |
if ${{ matrix.os == 'macos' }}
then
brew install curl
else
sudo apt update && sudo apt install -y --no-install-recommends libcurl4-openssl-dev
fi
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- name: Run tests
run: bundle exec rake