datacite/omniauth-globus

View on GitHub
.github/workflows/release.yml

Summary

Maintainability
Test Coverage
name: Release Ruby Gem

on:
  release:
    types: [published]
jobs:
  build:
    runs-on: ubuntu-latest
    env:
      SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
    steps:
    - uses: actions/checkout@v2
    - name: Set up Ruby 2.6
      uses: actions/setup-ruby@v1
      with:
        ruby-version: 2.6.x

    - name: Build and test
      run: |
        gem install bundler
        bundle install
        bundle exec rspec spec

    - name: Code Climate Test Reporter
      uses: aktions/codeclimate-test-reporter@v1
      with:
        codeclimate-test-reporter-id: ${{ secrets.CC_TEST_REPORTER_ID }}
        command: after-build

    - name: Publish to RubyGems
      run: |
        mkdir -p $HOME/.gem
        touch $HOME/.gem/credentials
        chmod 0600 $HOME/.gem/credentials
        printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
        gem build *.gemspec
        gem push *.gem
      env:
        GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"

    - name: Notify Slack
      uses: adamkdean/simple-slack-notify@1.0.4
      with:
        channel: '#ops'
        username: 'GitHub Actions'
        color: 'good'
        text: 'A new version of the omniauth_globus gem has been released.'