name: Rubyspec Version Guards Check on: push: paths: - '.github/workflows/spec_guards.yml' - 'spec/**' - '!spec/*.md' pull_request: paths: - '.github/workflows/spec_guards.yml' - 'spec/**' - '!spec/*.md' merge_group: concurrency: group: ${{ github.workflow }} / ${{ startsWith(github.event_name, 'pull') && github.ref_name || github.sha }} cancel-in-progress: ${{ startsWith(github.event_name, 'pull') }} permissions: contents: read jobs: rubyspec: name: Rubyspec runs-on: ubuntu-22.04 if: >- ${{!(false || contains(github.event.head_commit.message, '[DOC]') || contains(github.event.head_commit.message, 'Document') || contains(github.event.pull_request.title, '[DOC]') || contains(github.event.pull_request.title, 'Document') || contains(github.event.pull_request.labels.*.name, 'Documentation') || (github.event_name == 'push' && github.event.pull_request.user.login == 'dependabot[bot]') )}} strategy: matrix: # Specs from ruby/spec should still run on all supported Ruby versions. # This also ensures the needed ruby_version_is guards are there, see spec/README.md. ruby: - ruby-3.1 - ruby-3.2 - ruby-3.3 - ruby-3.4 steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: ruby/setup-ruby@d8d83c3960843afb664e821fed6be52f37da5267 # v1.231.0 with: ruby-version: ${{ matrix.ruby }} bundler: none - run: gem install webrick - run: ruby ../mspec/bin/mspec working-directory: spec/ruby env: CHECK_LEAKS: true - uses: ./.github/actions/slack with: label: ${{ matrix.ruby }} SLACK_WEBHOOK_URL: ${{ secrets.SIMPLER_ALERTS_URL }} # ruby-lang slack: ruby/simpler-alerts-bot if: ${{ failure() }}