Repository navigation
118 lines (104 loc) · 2.93 KB
/
Copy pathci.yml
File metadata and controls
118 lines (104 loc) · 2.93 KB
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
name: ci
on:
push:
branches:
- '*'
tags-ignore:
- '*'
pull_request:
jobs:
perl-versions:
runs-on: ubuntu-latest
name: List Perl versions
outputs:
perl-versions: ${{ steps.action.outputs.perl-versions }}
steps:
- id: action
uses: perl-actions/perl-versions@v2
with:
# OpenStack::Client 1.0007 requires Perl 5.14, so older Perls can never pass.
since-perl: 5.14
with-devel: true
linux:
name: "Perl ${{ matrix.perl-version }}"
needs: [perl-versions]
runs-on: ubuntu-latest
env:
PERL_USE_UNSAFE_INC: 0
AUTHOR_TESTING: 1
AUTOMATED_TESTING: 1
RELEASE_TESTING: 1
strategy:
fail-fast: false
matrix:
perl-version: ${{ fromJson(needs.perl-versions.outputs.perl-versions) }}
container:
image: perldocker/perl-tester:${{ matrix.perl-version }}
steps:
- uses: actions/checkout@v6
- name: perl -V
run: perl -V
# cpm@v2 uses Node 24 (Node 20 is deprecated by GitHub).
# It auto-pins to the legacy cpm 0.998003 for Perl < 5.24,
# so older Perls still get a compatible cpm.
- name: Install dependencies
uses: perl-actions/install-with-cpm@v2
with:
sudo: false
global: false
cpanfile: ".github/cpanfile"
- name: Set PERL5LIB to local lib
run: echo "PERL5LIB=${{ github.workspace }}/local/lib/perl5" >> $GITHUB_ENV
- name: Makefile.PL
run: perl Makefile.PL
- name: make test
run: make test
macos:
name: macOS
runs-on: macos-latest
env:
PERL_USE_UNSAFE_INC: 0
AUTOMATED_TESTING: 1
steps:
- uses: actions/checkout@v6
- uses: shogo82148/actions-setup-perl@v1
with:
perl-version: '5.40'
- name: perl -V
run: perl -V
- name: Install dependencies
uses: perl-actions/install-with-cpm@v2
with:
global: false
cpanfile: ".github/cpanfile"
- name: Set PERL5LIB to local lib
run: echo "PERL5LIB=${{ github.workspace }}/local/lib/perl5" >> $GITHUB_ENV
- name: Makefile.PL
run: perl Makefile.PL
- name: make test
run: make test
windows:
name: Windows
runs-on: windows-latest
env:
PERL_USE_UNSAFE_INC: 0
AUTOMATED_TESTING: 1
steps:
- uses: actions/checkout@v6
- uses: shogo82148/actions-setup-perl@v1
with:
perl-version: '5.40'
distribution: strawberry
- name: perl -V
run: perl -V
- name: Install dependencies
uses: perl-actions/install-with-cpm@v2
with:
global: false
cpanfile: ".github/cpanfile"
- name: Set PERL5LIB to local lib
run: echo "PERL5LIB=${{ github.workspace }}/local/lib/perl5" >> $GITHUB_ENV
- name: Makefile.PL
run: perl Makefile.PL
- name: make test
run: gmake test