.github/workflows/ci.yml in service_skeleton-1.0.5 vs .github/workflows/ci.yml in service_skeleton-2.0.0
- old
+ new
@@ -1,46 +1,52 @@
-name: CI
+name: Service Skeleton Tests
on:
pull_request:
push:
branches:
- - "v1_0"
+ - master
+ tags:
+ - v*
jobs:
build:
runs-on: ubuntu-latest
-
+ name: Ruby ${{ matrix.ruby }}
strategy:
matrix:
- ruby:
- - 2.5
-
+ ruby: ["2.5", "2.6", "2.7"]
steps:
- uses: actions/checkout@v2
-
- - name: Setup ruby
- uses: ruby/setup-ruby@v1
with:
+ fetch-depth: 0 # Fetch all history. Needed for `git describe`
+ - uses: actions/setup-ruby@v1
+ with:
ruby-version: ${{ matrix.ruby }}
- bundler-cache: true
-
- - name: Lint
+ - name: Bundler cache
+ uses: actions/cache@v2
+ with:
+ path: vendor/bundle
+ key: ${{ runner.os }}-${{ matrix.ruby }}-gems-${{ hashFiles('**/Gemfile.lock') }}
+ restore-keys: |
+ ${{ runner.os }}-${{ matrix.ruby }}-gems-
+ - name: Setup gems
+ run: |
+ gem install bundler
+ bundle config path vendor/bundle
+ bundle install --jobs 4
+ - name: Rubocop
run: bundle exec rubocop
-
- name: Tests
- run: bundle exec rake test
-
+ run: bundle exec rspec
+ - name: Ultravisor Tests
+ run: bundle exec rspec ultravisor/spec
publish:
- if: github.event_name == 'push' && (github.ref == 'refs/heads/v1_0')
+ if: contains(github.ref, 'refs/tags/v')
needs: build
runs-on: ubuntu-latest
-
steps:
- uses: actions/checkout@v2
-
- name: Release Gem
- uses: discourse/publish-rubygems-action@v2-beta
+ uses: discourse/publish-rubygems-action@v1
env:
- RUBYGEMS_API_KEY: ${{ secrets.RUBYGEMS_API_KEY }}
- GIT_EMAIL: team@discourse.org
- GIT_NAME: discoursebot
+ RUBYGEMS_API_KEY: ${{secrets.RUBYGEMS_API_KEY}}