CI: bump build/coverage jobs to perl 5.42 and tune dependabot #333
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: dzil build and test | |
| on: | |
| push: | |
| branches: | |
| - "master" | |
| pull_request: | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build-job: | |
| name: Build distribution | |
| runs-on: ubuntu-24.04 | |
| container: | |
| image: perldocker/perl-tester:5.42 | |
| steps: | |
| - uses: actions/checkout@v5 | |
| - name: Run Tests | |
| env: | |
| AUTHOR_TESTING: 1 | |
| AUTOMATED_TESTING: 1 | |
| EXTENDED_TESTING: 1 | |
| RELEASE_TESTING: 1 | |
| run: auto-build-and-test-dist | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: build_dir | |
| path: build_dir | |
| coverage-job: | |
| needs: build-job | |
| runs-on: ubuntu-24.04 | |
| container: | |
| image: perldocker/perl-tester:5.42 | |
| steps: | |
| - uses: actions/checkout@v5 # codecov wants to be inside a Git repository | |
| - uses: actions/download-artifact@v5 | |
| with: | |
| name: build_dir | |
| path: . | |
| - name: Install deps and test | |
| run: cpan-install-dist-deps && test-dist | |
| env: | |
| CODECOV_TOKEN: ${{secrets.CODECOV_TOKEN}} | |
| test-job: | |
| needs: build-job | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ubuntu-latest, macos-latest] | |
| distribution: [default, strawberry] | |
| perl-version: | |
| - "5.12" | |
| - "5.14" | |
| - "5.16" | |
| - "5.18" | |
| - "5.20" | |
| - "5.22" | |
| - "5.24" | |
| - "5.26" | |
| - "5.28" | |
| - "5.30" | |
| - "5.32" | |
| - "5.34" | |
| - "5.36" | |
| - "5.38" | |
| - "5.40" | |
| - "5.42" | |
| exclude: | |
| - { os: windows-latest, distribution: default } | |
| - { os: macos-latest, distribution: strawberry } | |
| - { os: ubuntu-latest, distribution: strawberry } | |
| - { distribution: strawberry, perl-version: "5.12" } | |
| - { distribution: strawberry, perl-version: "5.14" } | |
| - { distribution: strawberry, perl-version: "5.16" } | |
| - { distribution: strawberry, perl-version: "5.34" } | |
| - { distribution: strawberry, perl-version: "5.36" } | |
| # Pre-5.24 Perls are flaky/unbuildable on hosted macOS runners. | |
| - { os: macos-latest, perl-version: "5.12" } | |
| - { os: macos-latest, perl-version: "5.14" } | |
| - { os: macos-latest, perl-version: "5.16" } | |
| - { os: macos-latest, perl-version: "5.18" } | |
| - { os: macos-latest, perl-version: "5.20" } | |
| - { os: macos-latest, perl-version: "5.22" } | |
| runs-on: ${{ matrix.os }} | |
| name: on ${{ matrix.os }} perl ${{ matrix.perl-version }} | |
| steps: | |
| - name: set up perl | |
| uses: shogo82148/actions-setup-perl@v1 | |
| with: | |
| perl-version: ${{ matrix.perl-version }} | |
| distribution: ${{ matrix.distribution }} | |
| - uses: actions/download-artifact@v5 | |
| with: | |
| name: build_dir | |
| path: . | |
| - name: install deps using cpm | |
| uses: perl-actions/install-with-cpm@v2 | |
| with: | |
| cpanfile: "cpanfile" | |
| args: "--with-suggests --with-recommends --with-test" | |
| # App::cpm v0.999.0+ requires Perl 5.24+; pin older Perls to the last compatible release. | |
| version: ${{ matrix.perl-version <= '5.22' && '0.998003' || 'main' }} | |
| - run: prove -lr t | |
| env: | |
| AUTHOR_TESTING: 0 | |
| RELEASE_TESTING: 0 |