1.28 - 2024-09-20 #68
This file contains 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: build and test | |
on: | |
# Automated: | |
push: | |
branches: | |
- "main" | |
- "test" | |
pull_request: | |
branches: | |
- "main" | |
# Manual: | |
workflow_dispatch: | |
jobs: | |
build-job: | |
name: Build distribution | |
runs-on: ubuntu-20.04 | |
container: | |
image: perldocker/perl-tester:5.38 | |
steps: | |
- name: Checkout docker/package | |
uses: actions/checkout@v4 | |
- name: Show perl version | |
run: perl -V | |
- name: Install dependencies | |
run: | | |
cpanm --notest Module::Build~0.4004 | |
cpanm --notest Test::CheckManifest | |
perl Build.PL | |
perl Build installdeps | |
- name: Prepare build_dir | |
run: | | |
perl Build distdir | |
BUILD_DIR=$(perl -MModule::Build -e 'print Module::Build->resume->dist_dir') | |
mv -v $BUILD_DIR build_dir | |
- name: Run tests (sanity check) | |
env: | |
AUTHOR_TESTING: 1 | |
AUTOMATED_TESTING: 1 | |
EXTENDED_TESTING: 1 | |
RELEASE_TESTING: 1 | |
run: | | |
cd build_dir | |
perl Build.PL | |
perl Build test | |
- name: Upload artifact for next steps | |
uses: actions/upload-artifact@v4 | |
with: | |
name: build_dir | |
path: build_dir | |
test-job: | |
needs: build-job | |
strategy: | |
fail-fast: true | |
matrix: | |
os: [ ubuntu-latest, macos-latest ] | |
perl-version: | |
- "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.0" | |
# - "latest" | |
runs-on: ${{ matrix.os }} | |
name: on ${{ matrix.os }} perl ${{ matrix.perl-version }} | |
steps: | |
- name: Set up perl | |
uses: shogo82148/[email protected] | |
with: | |
perl-version: ${{ matrix.perl-version }} | |
distribution: default | |
- name: Download artifact from build step | |
uses: actions/download-artifact@v4 | |
with: | |
name: build_dir | |
path: . | |
- name: Show perl version | |
run: perl -V | |
- name: Install Dependencies | |
run: | | |
cpanm --notest Module::Build~0.4004 | |
perl Build.PL | |
perl Build installdeps --cpan_client 'cpan -T' | |
- name: Run tests | |
run: prove -lr t -v | |
env: | |
AUTHOR_TESTING: 0 | |
RELEASE_TESTING: 0 |