Skip to content

ci

ci #49

Workflow file for this run

name: ci
on:
push:
paths:
- ".github/workflows/ci.yml"
- "lib/**"
- "*.gemspec"
- "spec/**"
- "Rakefile"
- "Gemfile"
- ".rubocop.yml"
pull_request:
branches:
- main
schedule:
- cron: "30 4 * * *"
create:
jobs:
tests:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
ruby:
- "3.2"
- "3.1"
- "3.0"
steps:
- uses: ravsamhq/notify-slack-action@v1
if: always()
with:
status: ${{ job.status }}
notify_when: "failure"
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
- name: Checkout
uses: actions/checkout@v1
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- name: Cache node_modules
id: cache-modules
uses: actions/cache@v1
with:
path: node_modules
key: node-${{ runner.OS }}-build-${{ hashFiles('package.json') }}
- name: Install NPM Modules
if: steps.cache-modules.outputs.cache-hit != 'true'
run: npm install
- name: Setup Node ${{ matrix.node_version }}
uses: actions/setup-node@v1
with:
node-version: 18.x
registry-url: 'https://registry.npmjs.org'
- name: Run the test suite
run: bundle exec rake