Skip to content

Commit

Permalink
Add GitHub Actions config
Browse files Browse the repository at this point in the history
Don't test 5.10 and 5.12 on Windows

shogo82148/actions-setup-perl#225

Try running Windows tests via cpanm

Have Windows builds depend on Linux build, to reduce waiting
  • Loading branch information
oalders committed Jun 30, 2020
1 parent 4ed53c3 commit edf41f6
Showing 1 changed file with 146 additions and 0 deletions.
146 changes: 146 additions & 0 deletions .github/workflows/build-and-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
---
name: dzil build and test

on:
push:
branches:
- "*"
pull_request:
branches:
- "*"
schedule:
- cron: "15 4 * * 0" # Every Sunday morning

jobs:
build-job:
name: Build distribution
runs-on: ubuntu-latest
container:
image: perldocker/perl-tester:5.32
steps:
- uses: actions/checkout@v2
- name: Run Tests
env:
AUTHOR_TESTING: 1
AUTOMATED_TESTING: 1
EXTENDED_TESTING: 1
RELEASE_TESTING: 1
run: upgrade-perl-helpers && auto-build-and-test-dist
- uses: actions/upload-artifact@master
with:
name: build_dir
path: build_dir
coverage-job:
name: Coverage
needs: build-job
runs-on: ubuntu-latest
container:
image: perldocker/perl-tester:5.32
steps:
- uses: actions/checkout@v2 # codecov wants to be inside a Git repository
- uses: actions/download-artifact@master
with:
name: build_dir
path: .
- name: Install deps and test
run: cpan-install-dist-deps --with-develop && test-dist
env:
CODECOV_TOKEN: ${{secrets.CODECOV_TOKEN}}
test-linux:
name: "${{ matrix.perl-version }} on Linux"
needs: build-job
runs-on: ubuntu-latest
container:
image: "perldocker/perl-tester:${{ matrix.perl-version }}"
strategy:
matrix:
perl-version:
- "5.8"
- "5.10"
- "5.12"
- "5.14"
- "5.16"
- "5.18"
- "5.20"
- "5.22"
- "5.24"
- "5.26"
- "5.28"
- "5.30"
- "5.32"
steps:
- uses: actions/checkout@v2
- uses: actions/download-artifact@master
with:
name: build_dir
path: .
- name: Install deps and test
run: cpan-install-dist-deps && test-dist
test-macos:
name: ${{ matrix.perl-version }} on macos-latest
needs: test-linux
runs-on: macos-latest
strategy:
matrix:
perl-version:
- "5.8"
- "5.10"
- "5.12"
- "5.14"
- "5.16"
- "5.18"
- "5.20"
- "5.22"
- "5.24"
- "5.26"
- "5.28"
- "5.30"
- "5.32"
steps:
- name: Set Up Perl
uses: shogo82148/actions-setup-perl@v1
with:
perl-version: ${{ matrix.perl-version }}
- uses: actions/download-artifact@master
with:
name: build_dir
path: .
- name: install deps using cpm
uses: perl-actions/[email protected]
with:
cpanfile: "cpanfile"
args: "--with-suggests --with-test"
- run: prove -lr t
test-windows:
name: ${{ matrix.perl-version }} on windows-latest
needs: test-linux
runs-on: windows-latest
strategy:
fail-fast: true
matrix:
perl-version:
- "5.14"
- "5.16"
#- "5.18" https://github.com/libwww-perl/WWW-Mechanize/runs/822568352?check_suite_focus=true
- "5.20"
- "5.22"
- "5.24"
- "5.26"
- "5.28"
- "5.30"
steps:
- name: Set Up Perl
uses: shogo82148/actions-setup-perl@v1
with:
perl-version: ${{ matrix.perl-version }}
distribution: strawberry # this option only used on Windows
- uses: actions/download-artifact@master
with:
name: build_dir
path: .
- name: install deps using cpm
uses: perl-actions/[email protected]
with:
cpanfile: "cpanfile"
args: "--with-suggests --with-test --with-develop"
- run: cpanm --testonly -v .

0 comments on commit edf41f6

Please sign in to comment.