Add Ruby 3.4 to CI matrix #2240
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Continuous Integration | |
| on: | |
| push: | |
| branches: | |
| - master | |
| - "*-stable" | |
| paths-ignore: | |
| - "docs/**" | |
| pull_request: | |
| branches: | |
| - master | |
| - "*-stable" | |
| paths-ignore: | |
| - "docs/**" | |
| jobs: | |
| ci: | |
| name: "Run Tests (${{ matrix.ruby.label }} on ${{ matrix.os.label }})" | |
| runs-on: ${{ matrix.os.image }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| ruby: | |
| - label: Ruby 2.7 | |
| version: "2.7" | |
| - label: Ruby 3.3 | |
| version: "3.3" | |
| os: | |
| - label: Linux | |
| image: "ubuntu-latest" | |
| - label: Windows | |
| image: "windows-latest" | |
| steps: | |
| - name: Checkout Repository | |
| uses: actions/checkout@v4 | |
| - name: "Set up ${{ matrix.ruby.label }}" | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby.version }} | |
| bundler-cache: true | |
| - name: Run Minitest based tests | |
| run: bash script/test | |
| - name: Run Cucumber based tests | |
| run: bash script/cucumber | |
| - name: Generate and Build a new site | |
| run: bash script/default-site | |
| xtras: | |
| name: "${{ matrix.job_name }} (${{ matrix.setup_label }})" | |
| runs-on: "ubuntu-latest" | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - job_name: "Unit Test with Ruby 3.4" | |
| setup_label: "Ruby 3.4" | |
| step_name: "Run Minitest based tests" | |
| script_file: "test" | |
| ruby_version: "3.4" | |
| - job_name: "Generate and Build a new site with Ruby 3.4" | |
| setup_label: "Ruby 3.4" | |
| step_name: "Generate and Build a new site" | |
| script_file: "default-site" | |
| ruby_version: "3.4" | |
| - job_name: "Unit Test with JRuby" | |
| setup_label: "JRuby Edge" | |
| step_name: "Run Minitest based tests" | |
| script_file: "test" | |
| ruby_version: "jruby-head" | |
| - job_name: "Smoke Test with JRuby" | |
| setup_label: "JRuby Edge" | |
| step_name: "Generate and Build a new site" | |
| script_file: "default-site" | |
| ruby_version: "jruby-head" | |
| - job_name: "Profile Docs Site" | |
| setup_label: "Ruby 2.7" | |
| step_name: "Build and Profile docs site" | |
| script_file: "profile-docs" | |
| ruby_version: "2.7" | |
| - job_name: "Style Check" | |
| setup_label: "Ruby 2.7" | |
| step_name: "Run RuboCop" | |
| script_file: "fmt" | |
| ruby_version: "2.7" | |
| steps: | |
| - name: Checkout Repository | |
| uses: actions/checkout@v4 | |
| - name: "Set up ${{ matrix.setup_label }}" | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby_version }} | |
| bundler-cache: true | |
| - name: ${{ matrix.step_name }} | |
| run: bash script/${{ matrix.script_file }} |