@@ -3,10 +3,13 @@ name: testsuite
33on :
44 push :
55 branches :
6- - " * "
6+ - ' * '
77 tags-ignore :
8- - " * "
8+ - ' * '
99 pull_request :
10+ workflow_dispatch :
11+
12+ permissions : {}
1013
1114jobs :
1215 ubuntu :
@@ -19,112 +22,173 @@ jobs:
1922 runs-on : ubuntu-latest
2023
2124 steps :
22- - uses : actions/checkout@v2
25+ - uses : actions/checkout@v4
26+ timeout-minutes : 5
2327 - name : perl -V
2428 run : perl -V
25- - name : Install Dependencies
26- uses : perl-actions/install-with-cpm@v1
27- with :
28- cpanfile : " cpanfile"
29+ timeout-minutes : 5
2930 - name : Makefile.PL
30- run : perl -I$(pwd) Makefile.PL
31+ run : perl Makefile.PL
32+ timeout-minutes : 5
3133 - name : make test
3234 run : make test
35+ timeout-minutes : 5
36+
37+ disttest :
38+ env :
39+ PERL_USE_UNSAFE_INC : 0
40+ AUTHOR_TESTING : 1
41+ AUTOMATED_TESTING : 1
42+ RELEASE_TESTING : 1
3343
34- linux :
35- name : " linux ${{ matrix.perl-version }}"
36- needs : [ubuntu]
3744 runs-on : ubuntu-latest
3845
46+ steps :
47+ - uses : actions/checkout@v4
48+ timeout-minutes : 5
49+ - name : perl -V
50+ run : perl -V
51+ timeout-minutes : 5
52+ - name : Makefile.PL
53+ run : perl Makefile.PL
54+ timeout-minutes : 5
55+ - name : make disttest
56+ run : make disttest
57+ timeout-minutes : 5
58+
59+ xt :
3960 env :
4061 PERL_USE_UNSAFE_INC : 0
4162 AUTHOR_TESTING : 1
4263 AUTOMATED_TESTING : 1
4364 RELEASE_TESTING : 1
44- PERL_CARTON_PATH : $GITHUB_WORKSPACE/local
65+
66+ runs-on : ubuntu-latest
67+
68+ container :
69+ image : perldocker/perl-tester:latest
70+
71+ steps :
72+ - uses : actions/checkout@v4
73+ timeout-minutes : 5
74+ - name : perl -V
75+ run : perl -V
76+ timeout-minutes : 5
77+ - name : Makefile.PL
78+ run : |
79+ perl Makefile.PL
80+ mv MYMETA.json META.json
81+ mv MYMETA.yml META.yml
82+ timeout-minutes : 5
83+ - name : extended tests
84+ run : prove -lb xt/*.t
85+ timeout-minutes : 5
86+
87+ perl-versions :
88+ runs-on : ubuntu-latest
89+ needs : [ubuntu, disttest]
90+ name : List Perl versions
91+ outputs :
92+ perl-versions : ${{ steps.action.outputs.perl-versions }}
93+ steps :
94+ - id : action
95+ uses : perl-actions/perl-versions@v1
96+ timeout-minutes : 5
97+ with :
98+ since-perl : 5.8
99+ with-devel : true
100+
101+ linux :
102+ name : " Perl ${{ matrix.perl-version }}"
103+ needs : [perl-versions]
104+ runs-on : ubuntu-latest
105+
106+ env :
107+ PERL_USE_UNSAFE_INC : 0
108+ AUTHOR_TESTING : 0
109+ AUTOMATED_TESTING : 1
110+ RELEASE_TESTING : 1
45111
46112 strategy :
113+ fail-fast : false
47114 matrix :
48- perl-version :
49- - " latest"
50- - " 5.36"
51- - " 5.34"
52- - " 5.32"
53- - " 5.30"
54- - " 5.28"
55- - " 5.26"
56- - " 5.24"
57- - " 5.22"
58- - " 5.20"
59- - " 5.18"
60- - " 5.16"
61- - " 5.14"
62- - " 5.12"
63- - " 5.10"
64- - " 5.8"
115+ perl-version : ${{ fromJson(needs.perl-versions.outputs.perl-versions) }}
65116
66117 container :
67- image : perl:${{ matrix.perl-version }}
118+ image : perldocker/ perl-tester :${{ matrix.perl-version }}
68119
69120 steps :
70- - uses : actions/checkout@v2
121+ - uses : actions/checkout@v4
122+ timeout-minutes : 5
71123 - name : perl -V
72124 run : perl -V
73- - name : Install Dependencies
74- uses : perl-actions/install-with-cpm@v1
75- with :
76- sudo : false
77- cpanfile : " cpanfile"
125+ timeout-minutes : 5
78126 - run : perl Makefile.PL
127+ timeout-minutes : 5
79128 - run : make
129+ timeout-minutes : 5
80130 - run : make test
131+ timeout-minutes : 5
81132
82133 macOS :
83134 needs : [ubuntu, linux]
84- runs-on : macOS -latest
135+ runs-on : macos -latest
85136
86137 env :
87138 PERL_USE_UNSAFE_INC : 0
88139 AUTHOR_TESTING : 1
89140 AUTOMATED_TESTING : 1
90- RELEASE_TESTING : 1
91- PERL_CARTON_PATH : $GITHUB_WORKSPACE/local
141+ RELEASE_TESTING : 0
92142
93143 steps :
94- - uses : actions/checkout@v2
144+ - uses : actions/checkout@v4
145+ timeout-minutes : 5
95146 - name : Set up Perl
96147 run : brew install perl
148+ timeout-minutes : 5
97149 - name : perl -V
98150 run : perl -V
99- - name : Install Dependencies
100- uses : perl-actions/install-with-cpm@v1
101- with :
102- sudo : false
103- cpanfile : " cpanfile"
151+ timeout-minutes : 5
104152 - run : perl Makefile.PL
153+ timeout-minutes : 5
105154 - run : make
155+ timeout-minutes : 5
106156 - run : make test
157+ timeout-minutes : 5
107158
108159 windows :
109160 needs : [ubuntu, linux]
110161 runs-on : windows-latest
111162
163+ env :
164+ PERL_USE_UNSAFE_INC : 0
165+ AUTHOR_TESTING : 0
166+ AUTOMATED_TESTING : 1
167+ RELEASE_TESTING : 0
168+
112169 steps :
113- - uses : actions/checkout@v2
170+ - uses : actions/checkout@v4
171+ timeout-minutes : 5
114172 - name : Set up Perl
173+ timeout-minutes : 5
115174 run : |
116175 choco install strawberryperl
117- echo "C:\strawberry\c\bin;C:\strawberry\perl\site\bin;C:\strawberry\perl\bin" >> $GITHUB_PATH
176+ echo @"
177+ C:\strawberry\c\bin
178+ C:\strawberry\perl\site\bin
179+ C:\strawberry\perl\bin
180+ "@ |
181+ Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
118182 - name : perl -V
119183 run : perl -V
120- - name : Install Dependencies
121- uses : perl-actions/install-with-cpm@v1
122- with :
123- sudo : false
124- cpanfile : " cpanfile"
125- - name : perl Makefile.PL
184+ timeout-minutes : 5
185+ - name : Makefile.PL
126186 run : perl Makefile.PL
187+ timeout-minutes : 5
127188 - name : make
128189 run : make
129- - name : Run Tests
190+ timeout-minutes : 5
191+ - name : make test
130192 run : make test
193+ timeout-minutes : 5
194+
0 commit comments