Skip to content

Commit 9d3c09d

Browse files
committed
CI: Workaround sporadic segfaults with retries
Related progress issue: https://progress.opensuse.org/issues/176148
1 parent 5a2fec3 commit 9d3c09d

File tree

1 file changed

+9
-6
lines changed

1 file changed

+9
-6
lines changed

.github/workflows/ci-tests.yaml

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,17 +34,20 @@ jobs:
3434
perl Build.PL
3535
./Build build
3636
- name: Run tests
37-
if: matrix.perl != 'latest'
37+
if: matrix.perl != 'latest' || matrix.os == 'macos-latest'
3838
run: |
3939
TEST_SHARED=1 TEST_SUBREAPER=1 prove -l t
40-
- name: Run tests with coverage
41-
if: matrix.perl == 'latest'
40+
- name: Run tests with coverage and retry
41+
if: matrix.perl == 'latest' && matrix.os != 'macos-latest'
4242
run: |
43-
TEST_SHARED=1 TEST_SUBREAPER=1 PERL5OPT="-MDevel::Cover=-coverage,statement" prove -l t
44-
cover -report codecovbash
43+
# t/01_run.t can segfault, retrying multiple times
44+
# See https://progress.opensuse.org/issues/180026
45+
curl https://raw.githubusercontent.com/okurz/retry/refs/heads/main/retry > retry
46+
chmod +x retry
47+
./retry -r 7 env TEST_SHARED=1 TEST_SUBREAPER=1 PERL5OPT="-MDevel::Cover=-coverage,statement" prove -l t
4548
- name: Upload coverage to ☂️ Codecov
4649
uses: codecov/codecov-action@v5
47-
if: matrix.perl == 'latest'
50+
if: matrix.perl == 'latest' && matrix.os != 'macos-latest'
4851
with:
4952
token: ${{ secrets.CODECOV_TOKEN }}
5053
file: cover_db/codecov.json

0 commit comments

Comments
 (0)