diff options
Diffstat (limited to '.github/workflows/main.yml')
-rw-r--r-- | .github/workflows/main.yml | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..5149d9b --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,95 @@ +name: CI + +on: + push: + branches: + - master + pull_request: + branches: + - master + +jobs: + danger: + runs-on: ubuntu-latest + if: ${{ github.event_name == 'pull_request' }} + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-ruby@v1 + with: + ruby-version: 2.7 + - uses: MeilCli/danger-action@v5 + with: + danger_file: Dangerfile + danger_id: danger-pr + install_path: vendor/bundle + plugins_file: Gemfile + env: + DANGER_GITHUB_API_TOKEN: ${{ secrets.github_token }} + + integration-test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + bundler-cache: true + ruby-version: 2.7 + - name: Run integration tests + run: | + for dir in spec/integration/*; do + echo "testing $dir integration" + BUNDLE_GEMFILE=$dir/Gemfile bundle install --jobs 4 --retry 3 + BUNDLE_GEMFILE=$dir/Gemfile bundle exec rspec $dir + done + + test: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + ruby: + - 2.7 + - 2.6 + - 2.5 + - 2.4 + - 2.3 + - 2.2 + - 2.1 + steps: + - uses: actions/checkout@v2 + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + bundler-cache: true + ruby-version: ${{ matrix.ruby }} + - name: Install dependencies + run: bundle install --jobs 4 --retry 3 + - name: Run tests + run: bundle exec rake + + test-jruby: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + os: + - macos + - ubuntu + jruby: + - jruby + steps: + - uses: actions/checkout@v2 + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + bundler-cache: true + ruby-version: ${{ matrix.jruby }} + - name: Install dependencies + env: + JRUBY_OPTS: --debug + run: bundle install --jobs 4 --retry 3 + - name: Run tests + env: + JRUBY_OPTS: --debug + run: bundle exec rake |