-
Notifications
You must be signed in to change notification settings - Fork 213
42 lines (42 loc) · 2.02 KB
/
perl.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# This workflow tests Sqitch's basic functionality (no database testing) on all
# supported versions of Perl on Ubuntu, macOS, and Windows. It runs for pushes
# and pull requests on the main and develop branches.
name: 🧅 Perl
on:
push:
branches: [main, develop, "**perl**"]
pull_request:
branches: [main, develop, "**perl**"]
jobs:
Perl:
strategy:
matrix:
os: [[🐧, ubuntu], [🍎, macos], [🪟, windows]]
perl: [ '5.38', '5.36', '5.34', '5.32', '5.30', '5.28', '5.26', '5.24', '5.22', '5.20', '5.18', '5.16', '5.14', '5.12' ]
exclude:
- { os: [🪟, windows], perl: '5.12' } # https://github.com/shogo82148/actions-setup-perl/issues/876
- { os: [🪟, windows], perl: '5.14' } # https://github.com/shogo82148/actions-setup-perl/issues/881
name: 🧅 Perl ${{ matrix.perl }} on ${{ matrix.os[0] }} ${{ matrix.os[1] }}
runs-on: ${{ matrix.os[1] }}-latest
steps:
- uses: actions/checkout@v4
- name: Setup Perl
id: perl
uses: shogo82148/actions-setup-perl@v1
with: { perl-version: "${{ matrix.perl }}" }
- run: perl -V
- if: runner.os == 'Linux'
name: Install Apt Packages
run: sudo apt-get install -qq language-pack-fr language-pack-en language-pack-de language-pack-it
- name: Cache CPAN Modules
uses: actions/cache@v3
with:
path: local
key: perl-${{ steps.perl.outputs.perl-hash }}
- if: runner.os == 'Windows'
run: cpm install --verbose --show-build-log-on-failure --no-test --with-recommends Encode Win32::Console::ANSI Win32API::Net Win32::Locale Win32::ShellQuote DateTime::TimeZone::Local::Win32
- run: cpm install --verbose --show-build-log-on-failure --no-test --with-recommends --cpanfile dist/cpanfile
- run: cpm install --verbose --show-build-log-on-failure --no-test --with-recommends Test::Spelling Test::Pod Test::Pod::Coverage
- name: prove
env: { PERL5LIB: "${{ github.workspace }}/local/lib/perl5" }
run: prove -lrj4