Build(deps): Bump dita-ot/dita-ot-action from 4.3.5 to 4.4 #928
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: Tests | |
| on: | |
| pull_request: {} | |
| push: | |
| branches: | |
| - main | |
| permissions: | |
| contents: read | |
| # those variables are used by the majority of jobs and we don't want to repeat them in each job | |
| env: | |
| BOLT_WINRM_USER: roddypiper | |
| BOLT_WINRM_HOST: localhost | |
| BOLT_WINRM_PORT: 5985 | |
| BOLT_WINRM_SSL_PORT: 5986 | |
| BOLT_WINRM_SMB_PORT: 445 | |
| jobs: | |
| rubocop_and_matrix: | |
| runs-on: ubuntu-24.04 | |
| outputs: | |
| ruby: ${{ steps.ruby.outputs.versions }} | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install Ruby ${{ matrix.ruby }} | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: "3.4" | |
| bundler-cache: true | |
| - name: Run Rubocop | |
| run: bundle exec rake rubocop | |
| - id: ruby | |
| uses: voxpupuli/ruby-version@v1 | |
| cache_modules_linux: | |
| name: 'Linux: Generate module cache' | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: "3.4" | |
| bundler-cache: true | |
| - name: Cache modules | |
| id: modules | |
| uses: actions/cache@v5 | |
| with: | |
| path: modules | |
| key: ${{ runner.os }}-modules-${{ hashFiles('**/Puppetfile') }} | |
| - name: Install modules | |
| if: steps.modules.outputs.cache-hit != 'true' | |
| run: bundle exec r10k puppetfile install | |
| - name: list modules | |
| run: bundle exec puppet module list --modulepath=modules/ | |
| cache_modules_windows: | |
| name: 'Windows: Generate module cache' | |
| runs-on: 'windows-2025' | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: "3.4" | |
| bundler-cache: true | |
| - name: Cache modules | |
| id: modules | |
| uses: actions/cache@v5 | |
| with: | |
| path: modules | |
| key: ${{ runner.os }}-modules-${{ hashFiles('**/Puppetfile') }} | |
| - name: Install modules | |
| if: steps.modules.outputs.cache-hit != 'true' | |
| run: bundle exec r10k puppetfile install | |
| - name: list modules | |
| run: bundle exec puppet module list --modulepath=modules/ | |
| unit: | |
| needs: | |
| - rubocop_and_matrix | |
| - cache_modules_linux | |
| - cache_modules_windows | |
| name: "Unit tests ${{ matrix.ruby }} ${{ matrix.os }}" | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-24.04, windows-2025] | |
| ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }} | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby }} | |
| bundler-cache: true | |
| - name: Output Ruby Environment | |
| run: bundle env | |
| - name: Cache modules | |
| id: modules | |
| uses: actions/cache@v5 | |
| with: | |
| path: modules | |
| key: ${{ runner.os }}-modules-${{ hashFiles('**/Puppetfile') }} | |
| - name: Unit tests | |
| run: bundle exec rake tests:unit | |
| run-dita: | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Initialize | |
| uses: actions/checkout@v6 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: 3.3 | |
| bundler-cache: true | |
| - name: Generate docs | |
| run: bundle exec rake docs:all | |
| - name: Docs test | |
| uses: dita-ot/dita-ot-action@4.4 | |
| with: | |
| build: dita -i documentation/bolt.ditamap -o out -f html5 --processing-mode=strict | |
| local_transports: | |
| name: "local transport ${{ matrix.ruby }} ${{ matrix.os }}" | |
| needs: | |
| - rubocop_and_matrix | |
| - cache_modules_linux | |
| - cache_modules_windows | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-24.04, windows-2025] | |
| ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }} | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby }} | |
| bundler-cache: true | |
| - name: Cache modules | |
| id: modules | |
| uses: actions/cache@v5 | |
| with: | |
| path: modules | |
| key: ${{ runner.os }}-modules-${{ hashFiles('**/Puppetfile') }} | |
| - if: runner.os == 'Linux' | |
| uses: ./.github/actions/sudo_setup | |
| - if: runner.os == 'Windows' | |
| uses: ./.github/actions/windows_agent_setup | |
| - if: runner.os == 'Linux' | |
| name: Run tests | |
| run: bundle exec rake ci:local_transport:linux | |
| - if: runner.os == 'Windows' | |
| name: Run tests | |
| run: bundle exec rake ci:local_transport:windows | |
| winrm_transport: | |
| needs: | |
| - rubocop_and_matrix | |
| - cache_modules_windows | |
| name: WinRM Transport | |
| runs-on: windows-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby }} | |
| bundler-cache: true | |
| - name: Cache modules | |
| id: modules | |
| uses: actions/cache@v5 | |
| with: | |
| path: modules | |
| key: ${{ runner.os }}-modules-${{ hashFiles('**/Puppetfile') }} | |
| - name: Configure WinRM and use Puppet's Ruby | |
| shell: powershell | |
| run: | | |
| . scripts\ci.ps1 | |
| Set-ActiveRubyFromPuppet | |
| - name: WinRM transport tests | |
| run: bundle exec rake ci:winrm_transport | |
| apply: | |
| name: bolt apply | |
| needs: | |
| - rubocop_and_matrix | |
| - cache_modules_linux | |
| - cache_modules_windows | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-24.04, windows-2025] | |
| ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }} | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby }} | |
| bundler-cache: true | |
| - name: Cache modules | |
| id: modules | |
| uses: actions/cache@v5 | |
| with: | |
| path: modules | |
| key: ${{ runner.os }}-modules-${{ hashFiles('**/Puppetfile') }} | |
| - if: runner.os == 'Linux' | |
| uses: ./.github/actions/sudo_setup | |
| - if: runner.os == 'Windows' | |
| uses: ./.github/actions/windows_agent_setup | |
| - if: runner.os == 'Linux' | |
| name: Run tests | |
| run: bundle exec rake ci:apply:linux | |
| - name: Show tasks | |
| run: bundle exec bolt task show | |
| - if: runner.os == 'Windows' | |
| name: Run tests | |
| run: bundle exec rake ci:apply:windows | |
| boltspec: | |
| name: BoltSpec | |
| needs: | |
| - rubocop_and_matrix | |
| - cache_modules_windows | |
| - cache_modules_linux | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-24.04, windows-2025] | |
| # currently fails on Ruby 3.4 | |
| #ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }} | |
| ruby: ['3.2', '3.3'] | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby }} | |
| bundler-cache: true | |
| - name: Cache modules | |
| id: modules | |
| uses: actions/cache@v5 | |
| with: | |
| path: modules | |
| key: ${{ runner.os }}-modules-${{ hashFiles('**/Puppetfile') }} | |
| - if: runner.os == 'Linux' | |
| uses: ./.github/actions/docker_setup | |
| - if: runner.os == 'Windows' | |
| uses: ./.github/actions/windows_agentless_setup | |
| - name: Run tests | |
| if: runner.os == 'Windows' | |
| run: bundle exec rake ci:boltspec:windows | |
| - name: Run tests | |
| if: runner.os == 'Linux' | |
| run: bundle exec rake ci:boltspec:linux | |
| check_dependencies: | |
| name: Check mod deps | |
| needs: | |
| - cache_modules_linux | |
| runs-on: ubuntu-24.04 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: '3.4' | |
| bundler-cache: true | |
| - name: Cache modules | |
| id: modules | |
| uses: actions/cache@v5 | |
| with: | |
| path: modules | |
| key: ${{ runner.os }}-modules-${{ hashFiles('**/Puppetfile') }} | |
| - name: Validate all module dependencies | |
| run: bundle exec ./scripts/check_dependencies.rb | |
| integration_windows: | |
| needs: | |
| - rubocop_and_matrix | |
| - cache_modules_windows | |
| name: Windows Integration | |
| runs-on: windows-2025 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }} | |
| env: | |
| WINDOWS_AGENTS: true | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby }} | |
| bundler-cache: true | |
| - name: Cache modules | |
| id: modules | |
| uses: actions/cache@v5 | |
| with: | |
| path: modules | |
| key: ${{ runner.os }}-modules-${{ hashFiles('**/Puppetfile') }} | |
| - uses: ./.github/actions/windows_agent_setup | |
| - name: Run tests | |
| run: bundle exec rake ci:windows:integration | |
| agentless: | |
| needs: | |
| - rubocop_and_matrix | |
| - cache_modules_windows | |
| name: Windows Agentless | |
| runs-on: windows-2025 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }} | |
| env: | |
| BOLT_WINDOWS: true | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby }} | |
| bundler-cache: true | |
| - name: Cache modules | |
| id: modules | |
| uses: actions/cache@v5 | |
| with: | |
| path: modules | |
| key: ${{ runner.os }}-modules-${{ hashFiles('**/Puppetfile') }} | |
| - uses: ./.github/actions/windows_agentless_setup | |
| - name: Run tests | |
| run: bundle exec rake ci:windows:agentless | |
| ssh_transport: | |
| needs: | |
| - rubocop_and_matrix | |
| - cache_modules_linux | |
| name: SSH Transport | |
| runs-on: ubuntu-24.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| ruby: ['3.2', '3.3'] | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby }} | |
| bundler-cache: true | |
| - name: Cache modules | |
| id: modules | |
| uses: actions/cache@v5 | |
| with: | |
| path: modules | |
| key: ${{ runner.os }}-modules-${{ hashFiles('**/Puppetfile') }} | |
| - uses: ./.github/actions/sudo_setup | |
| - name: Run tests | |
| run: bundle exec rake ci:ssh_transport | |
| docker_transport: | |
| needs: | |
| - rubocop_and_matrix | |
| - cache_modules_linux | |
| name: Docker Transport | |
| runs-on: ubuntu-24.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby }} | |
| bundler-cache: true | |
| - name: Cache modules | |
| id: modules | |
| uses: actions/cache@v5 | |
| with: | |
| path: modules | |
| key: ${{ runner.os }}-modules-${{ hashFiles('**/Puppetfile') }} | |
| - uses: ./.github/actions/sudo_setup | |
| - name: Run tests | |
| run: bundle exec rake ci:docker_transport | |
| integration_linux: | |
| needs: | |
| - rubocop_and_matrix | |
| - cache_modules_linux | |
| name: Linux Integration | |
| runs-on: ubuntu-24.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| ruby: ${{ fromJSON(needs.rubocop_and_matrix.outputs.ruby) }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: ${{ matrix.ruby }} | |
| bundler-cache: true | |
| - name: Cache modules | |
| id: modules | |
| uses: actions/cache@v5 | |
| with: | |
| path: modules | |
| key: ${{ runner.os }}-modules-${{ hashFiles('**/Puppetfile') }} | |
| - uses: ./.github/actions/sudo_setup | |
| - name: Run tests | |
| run: bundle exec rake ci:linux:integration | |
| modules_ci: | |
| name: Test vendored Modules - ${{ matrix.runs-on }} | |
| runs-on: ${{ matrix.runs-on }} | |
| strategy: | |
| matrix: | |
| runs-on: | |
| - ubuntu-24.04 | |
| - windows-2025 | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v6 | |
| - name: Setup Ruby | |
| uses: ruby/setup-ruby@v1 | |
| with: | |
| ruby-version: 3.2 | |
| bundler-cache: true | |
| - name: Run module tests | |
| run: bundle exec rake ci:modules | |
| tests: | |
| if: always() | |
| needs: | |
| - rubocop_and_matrix | |
| - cache_modules_linux | |
| - cache_modules_windows | |
| - unit | |
| - run-dita | |
| - local_transports | |
| - winrm_transport | |
| - apply | |
| - boltspec | |
| - check_dependencies | |
| - integration_windows | |
| - agentless | |
| - ssh_transport | |
| - docker_transport | |
| - integration_linux | |
| - modules_ci | |
| runs-on: ubuntu-24.04 | |
| name: Test suite | |
| steps: | |
| - name: Decide whether the needed jobs succeeded or failed | |
| uses: re-actors/alls-green@release/v1 | |
| with: | |
| jobs: ${{ toJSON(needs) }} |