Skip to content

Use ftype

Use ftype #211

Workflow file for this run

name: CI
on: [push, pull_request]
jobs:
rspec:
strategy:
fail-fast: false
matrix:
ruby: [2.7, '3.0', 3.1, 3.2, 3.3, ruby-head, jruby-9.4, jruby-head]
platform: [ubuntu, windows, macos]
continue-on-error: ${{ endsWith(matrix.ruby, 'head') }}
runs-on: ${{matrix.platform}}-latest
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
bundler-cache: true
- run: gem install syntax_suggest
timeout-minutes: 5
- run: bundle exec rspec spec --tag=~gitls
timeout-minutes: 10
compare:
strategy:
fail-fast: false
matrix:
repo:
- rails/rails
- ruby/ruby
- facebook/react
platform: [ubuntu, windows, macos]
runs-on: ${{matrix.platform}}-latest
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: 3.2
bundler-cache: true
- run: git clone --depth 1 https://github.com/${{ matrix.repo }}.git target
timeout-minutes: 5
- if: matrix.platform == 'windows'
run: |
Set-Location target
ruby ..\bin\compare
ruby ..\bin\time
# id: compare
timeout-minutes: 1
- if: matrix.platform != 'windows'
run: |
cd target
../bin/compare
../bin/time
id: compare
timeout-minutes: 2
- run: cd target && ../bin/parse
if: failure() && steps.compare.outcome == 'failure'
- run: cd target && ../bin/ls
if: failure() && steps.compare.outcome == 'failure'
- run: cd target && git ls-files
if: failure() && steps.compare.outcome == 'failure'
- run: cd target && ../bin/ls '*.gitignore' | xargs tail -n +1
if: failure() && steps.compare.outcome == 'failure'
- run: cd target && find *
if: failure() && steps.compare.outcome == 'failure'
- run: cd target && git ls-files -ic --exclude-standard
if: failure() && steps.compare.outcome == 'failure'
- run: cd target && git diff --no-renames --diff-filter=D --name-only
if: failure() && steps.compare.outcome == 'failure'
- run: cd target && git ls-files --others --exclude-standard
if: failure() && steps.compare.outcome == 'failure'
coverage:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: '3.0'
bundler-cache: true
- run: gem install syntax_suggest
timeout-minutes: 5
- run: COVERAGE=1 bundle exec rspec
timeout-minutes: 5
- uses: actions/upload-artifact@v2
with:
name: coverage-report
path: 'coverage/*'
retention-days: 1
if: ${{ failure() }}
timeout-minutes: 5
rubocop:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: 3.2
bundler-cache: true
- run: gem install syntax_suggest
timeout-minutes: 5
- run: bundle exec rubocop
timeout-minutes: 5
spellr:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: 3.2
bundler-cache: true
- run: gem install syntax_suggest
timeout-minutes: 5
- run: bundle exec spellr
timeout-minutes: 1
leftovers:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: 3.2
bundler-cache: true
- run: gem install syntax_suggest
timeout-minutes: 5
- run: bundle exec leftovers
timeout-minutes: 1
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ruby/setup-ruby@v1
with:
ruby-version: 3.2
bundler-cache: true
- run: gem install syntax_suggest
timeout-minutes: 5
- run: bundle exec rake build
timeout-minutes: 1