Skip to content

RFC: proof-of-concept for feature-tracking and perl sub signatures (see #273) #255

RFC: proof-of-concept for feature-tracking and perl sub signatures (see #273)

RFC: proof-of-concept for feature-tracking and perl sub signatures (see #273) #255

---
name: dzil build and test
on:
push:
branches:
- master
pull_request:
branches:
- "*"
workflow_dispatch:
jobs:
build-job:
name: Build distribution
runs-on: ubuntu-20.04
container:
image: perldocker/perl-tester:5.38
steps:
- uses: actions/checkout@v4
- name: Run Tests
env:
AUTHOR_TESTING: 0
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-20.04
container:
image: perldocker/perl-tester:5.38
steps:
- uses: actions/checkout@v4 # codecov wants to be inside a Git repository
- uses: actions/download-artifact@v4
with:
name: build_dir
path: .
- name: install authordeps
run: dzil authordeps --missing | cpanm
- name: install deps
run: dzil listdeps --missing --author | cpanm
- name: Install deps and test
run: cpan-install-dist-deps && test-dist
env:
CODECOV_TOKEN: ${{secrets.CODECOV_TOKEN}}
ubuntu-test-job:
needs: build-job
runs-on: "ubuntu-20.04"
strategy:
fail-fast: true
matrix:
perl-version:
- "5.8"
- "5.10"
- "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"
name: Perl ${{ matrix.perl-version }} on ubuntu-20.04
steps:
- name: set up perl
uses: shogo82148/actions-setup-perl@v1
with:
perl-version: ${{ matrix.perl-version }}
- uses: actions/download-artifact@v4
with:
name: build_dir
path: .
- name: install deps using cpanm
uses: perl-actions/install-with-cpanm@v1
with:
args: " --installdeps ."
- name: Run tests
run: prove -lr t
env:
AUTHOR_TESTING: 0
RELEASE_TESTING: 0
macos-test-job:
needs: ubuntu-test-job
runs-on: "macos-latest"
strategy:
fail-fast: false
matrix:
perl-version:
- "5.8"
- "5.10"
- "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"
name: perl ${{ matrix.perl-version }} on macos-latest
steps:
- name: set up perl
uses: shogo82148/actions-setup-perl@v1
with:
perl-version: ${{ matrix.perl-version }}
- uses: actions/download-artifact@v4
with:
name: build_dir
path: .
- name: install deps using cpanm
uses: perl-actions/install-with-cpanm@v1
with:
args: " --verbose --installdeps ."
- run: prove -lr t
env:
AUTHOR_TESTING: 0
RELEASE_TESTING: 0
windows-test-job:
needs: ubuntu-test-job
runs-on: "windows-latest"
strategy:
fail-fast: true
matrix:
perl-version:
- "5.14"
- "5.16"
- "5.18"
- "5.20"
- "5.22"
- "5.24"
- "5.26"
- "5.28"
- "5.30"
- "5.32"
name: perl ${{ matrix.perl-version }} on windows-latest
steps:
- name: set up perl
uses: shogo82148/actions-setup-perl@v1
with:
perl-version: ${{ matrix.perl-version }}
distribution: strawberry # this option only used on windows
- uses: actions/download-artifact@v4
with:
name: build_dir
path: .
- name: install deps using cpanm
uses: perl-actions/install-with-cpanm@v1
with:
args: " --installdeps ."
- run: prove -lr t
env:
AUTHOR_TESTING: 0
RELEASE_TESTING: 0