Skip to content

dzil build and test #53

dzil build and test

dzil build and test #53

---
name: dzil build and test
on:
push:
branches:
- "*"
pull_request:
branches:
- "*"
schedule:
- cron: "15 4 * * 0" # Every Sunday morning
workflow_dispatch:
jobs:
build-job:
name: Build distribution
runs-on: ubuntu-latest
container:
image: perldocker/perl-tester:5.34
steps:
- uses: actions/checkout@v2
- 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@v3
with:
name: build_dir
path: build_dir
coverage-job:
name: Coverage
needs: build-job
runs-on: ubuntu-latest
container:
image: perldocker/perl-tester:5.34
steps:
- uses: actions/checkout@v2 # codecov wants to be inside a Git repository
- uses: actions/download-artifact@v3
with:
name: build_dir
path: .
- name: Install deps and test
run: cpan-install-dist-deps --with-develop && test-dist
env:
CODECOV_TOKEN: ${{secrets.CODECOV_TOKEN}}
test-linux:
name: "${{ matrix.perl-version }} on Linux"
needs: build-job
runs-on: ubuntu-latest
container:
image: "perldocker/perl-tester:${{ matrix.perl-version }}"
strategy:
matrix:
perl-version:
- "5.16"
- "5.18"
- "5.20"
- "5.22"
- "5.24"
- "5.26"
- "5.28"
- "5.30"
- "5.32"
- "5.34"
steps:
- uses: actions/checkout@v2
- uses: actions/download-artifact@v3
with:
name: build_dir
path: .
- name: Install deps and test
run: cpan-install-dist-deps && test-dist
test-macos:
name: ${{ matrix.perl-version }} on macos-latest
needs: test-linux
runs-on: macos-latest
strategy:
matrix:
perl-version:
- "5.16"
- "5.18"
- "5.20"
- "5.22"
- "5.24"
- "5.26"
- "5.28"
- "5.30"
- "5.32"
- "5.34"
steps:
- name: Set Up Perl
uses: shogo82148/actions-setup-perl@v1
with:
perl-version: ${{ matrix.perl-version }}
- uses: actions/download-artifact@v3
with:
name: build_dir
path: .
- name: install deps using cpm
uses: perl-actions/install-with-cpm@v1.3
with:
cpanfile: "cpanfile"
args: "--with-suggests --with-test"
- run: prove -lr t
# test-windows:
# name: ${{ matrix.perl-version }} on windows-latest
# needs: test-linux
# runs-on: windows-latest
# strategy:
# fail-fast: true
# matrix:
# perl-version:
# - "5.16"
# #- "5.18" https://github.com/libwww-perl/WWW-Mechanize/runs/822568352?check_suite_focus=true
# - "5.20"
# - "5.22"
# - "5.24"
# - "5.26"
# - "5.28"
# - "5.30"
# - "5.32"
# 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@v3
# with:
# name: build_dir
# path: .
# - name: install deps using cpm
# uses: perl-actions/install-with-cpm@v1.3
# with:
# cpanfile: "cpanfile"
# args: "--with-suggests --with-test --with-develop"
# - run: cpanm --testonly -v .