Skip to content

Test and Release

Test and Release #48

Workflow file for this run

name: Test and Release
on:
pull_request:
push:
paths:
- .github/**
- bin/**
- lib/**
- spec/**
- Gemfile
- Guardfile
- Rakefile
- egads.gemspec
release:
types:
- published
jobs:
test:
name: Test [Ruby ${{ matrix.ruby-version }}]
runs-on: ubuntu-latest
strategy:
matrix:
ruby-version:
- "2.7"
- "3.1"
- "3.2"
steps:
- uses: actions/checkout@v3
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby-version }}
- run: bundle install
- run: bundle exec rake test
push:
name: Publish Gem
if: ${{ github.event.release }}
needs:
- test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: ruby/setup-ruby@v1
with:
ruby-version: "3.2"
- uses: kickstarter/actions/setup-rubygems@main
with:
api-key: ${{ secrets.RUBYGEMS_API_KEY }}
- run: bundle install
- run: bundle exec rake gem:push