Skip to content

Commit a9f16b4

Browse files
atoomicLeont
authored andcommitted
Add basic GitHub CI workflow
This is testing the distribution on most Perl version since 5.10 to 5.32 Note that tests are failing on 5.6 and 5.8 for now. This would need investigation before enabling them. A pre-check is run using the basic ubuntu-latest container with the system perl. Only on success it's going to trigger the additional jobs.
1 parent 178c81d commit a9f16b4

File tree

1 file changed

+122
-0
lines changed

1 file changed

+122
-0
lines changed

.github/workflows/testsuite.yml

Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
name: testsuite
2+
3+
on:
4+
push:
5+
branches:
6+
- "*"
7+
tags-ignore:
8+
- "*"
9+
pull_request:
10+
11+
jobs:
12+
ubuntu:
13+
env:
14+
PERL_USE_UNSAFE_INC: 0
15+
AUTHOR_TESTING: 1
16+
AUTOMATED_TESTING: 1
17+
RELEASE_TESTING: 1
18+
19+
runs-on: ubuntu-latest
20+
21+
steps:
22+
- uses: actions/checkout@v2
23+
- name: perl -V
24+
run: perl -V
25+
- name: Makefile.PL
26+
run: perl -I$(pwd) Makefile.PL
27+
- name: make test
28+
run: make test
29+
30+
linux:
31+
name: "linux ${{ matrix.perl-version }}"
32+
needs: [ubuntu]
33+
env:
34+
PERL_USE_UNSAFE_INC: 0
35+
AUTHOR_TESTING: 1
36+
AUTOMATED_TESTING: 1
37+
RELEASE_TESTING: 1
38+
39+
runs-on: ubuntu-latest
40+
41+
strategy:
42+
fail-fast: false
43+
matrix:
44+
perl-version:
45+
[
46+
"perl:5.32",
47+
"perl:5.30",
48+
"perl:5.28",
49+
"perl:5.26",
50+
"perl:5.24",
51+
"perl:5.22",
52+
"perl:5.20",
53+
"perl:5.18",
54+
"perl:5.16",
55+
"perl:5.14",
56+
"perl:5.12",
57+
"perl:5.10",
58+
"perl:5.8",
59+
"perldocker/perl:5.6"
60+
]
61+
62+
container:
63+
image: ${{ matrix.perl-version }}
64+
65+
steps:
66+
- uses: actions/checkout@v1
67+
- name: perl -V
68+
run: perl -V
69+
- name: Makefile.PL
70+
run: perl -I$(pwd) Makefile.PL
71+
- name: make test
72+
run: make test
73+
74+
macOS:
75+
needs: [ubuntu]
76+
env:
77+
PERL_USE_UNSAFE_INC: 0
78+
AUTHOR_TESTING: 1
79+
AUTOMATED_TESTING: 1
80+
RELEASE_TESTING: 1
81+
82+
runs-on: macOS-latest
83+
84+
strategy:
85+
fail-fast: false
86+
matrix:
87+
perl-version: [latest]
88+
89+
steps:
90+
- uses: actions/checkout@v2
91+
- name: perl -V
92+
run: perl -V
93+
- name: Makefile.PL
94+
run: perl -I$(pwd) Makefile.PL
95+
- name: make test
96+
run: make test
97+
98+
windows:
99+
needs: [ubuntu]
100+
env:
101+
PERL_USE_UNSAFE_INC: 0
102+
AUTHOR_TESTING: 0
103+
AUTOMATED_TESTING: 1
104+
RELEASE_TESTING: 0
105+
106+
runs-on: windows-latest
107+
108+
strategy:
109+
fail-fast: false
110+
matrix:
111+
perl-version: [latest]
112+
113+
steps:
114+
- uses: actions/checkout@master
115+
- name: Set up Perl
116+
run: |
117+
choco install strawberryperl
118+
echo "##[add-path]C:\strawberry\c\bin;C:\strawberry\perl\site\bin;C:\strawberry\perl\bin"
119+
- name: perl -V
120+
run: perl -V
121+
- run: perl Makefile.PL
122+
- run: make test

0 commit comments

Comments
 (0)