name: Tests on: push: branches: [ main, master, dev/github-actions ] paths-ignore: - '**.md' pull_request: paths-ignore: - '**.md' workflow_dispatch: permissions: contents: read # to fetch code (actions/checkout) jobs: tests: name: >- OS ${{ matrix.os }}, Ruby ${{ matrix.ruby }} env: CI: true runs-on: ${{ matrix.os }} if: | !( contains(github.event.pull_request.title, '[ci skip]') || contains(github.event.pull_request.title, '[skip ci]')) strategy: fail-fast: false matrix: os: [ macos-12, windows-2022 ] ruby: [ 2.5, 2.7, 3.1 ] steps: - name: Checkout source uses: actions/checkout@v3 with: submodules: recursive - name: Setup Ruby uses: ruby/setup-ruby-pkgs@v1 with: ruby-version: ${{ matrix.ruby }} bundler-cache: true timeout-minutes: 10 - name: Run tests timeout-minutes: 10 run: bundle exec rake test