# GitHub Actions for Perl
{id: actions-for-perl}

## Goals
{id: github-actions-for-perl-goals}

* Setup CI for CPAN modules.
* CI for non-CPAN Perl code.
* Collect data and generate web site.


## CPAN Testers
{id: cpan-testers}

* [CPAN Testers](https://cpantesters.org/)
* [CPAN Testers Matrix](https://matrix.cpantesters.org/)
* Links from [MetaCPAN](https://metacpan.org/)

e.g. [DBI](https://metacpan.org/pod/DBI) and [DBI Matrix](http://matrix.cpantesters.org/?dist=DBI+1.643)


## Perl with Makefile.PL
{id: perl-with-makefile}

* [Makefile.PL](https://github.com/szabgab/github-actions-perldocker-perl-tester) with perldocker/perl-tester image.

## Case studies
{id: github-actions-for-per-case-studies}

* [with Makefile.PL](https://github.com/szabgab/github-actions-perl-makefile/)

* [with Dist::Zilla](https://github.com/szabgab/github-actions-perl-dist-zilla/)

* [with Build.PL](https://github.com/szabgab/github-actions-perl-build/)

* [GitHub Actions examples](https://code-maven.com/github-actions)

* [DBD::Pg](https://metacpan.org/pod/DBD::Pg)

## Examples - Perl
{id: examples-perl}

* [docker-perl-tester](https://github.com/Perl/docker-perl-tester/tree/master/.github/workflows)
* [Test2-Harness](https://github.com/Test-More/Test2-Harness/tree/master/.github/workflows)
* [Perl Power Tools](https://github.com/briandfoy/PerlPowerTools)

## Perl Tester Docker Image
{id: perl-tester-docker-image}

* [Perl tester Docker image](https://hub.docker.com/r/perldocker/perl-tester)

## CI Perl Tester Helpers
{id: ci-perl-tester-helpers}

Set of scripts (available via action syntax as well), all of them included in perltester dockers

* [CI Perl Tester Helpers](https://github.com/oalders/ci-perl-tester-helpers)

## GitHub Action to setup perl environment in the marketplace
{id: setup-perl-environment}

* [setup-perl-environment](https://github.com/marketplace/actions/setup-perl-environment)

## Perl and OS matrix
{id: perl-os-matrix}

![](examples/workflows/perl-os-matrix.yml)

## Perl and OS matrix - show error logs
{id: perl-os-matrix-show-error-logs}

![](examples/workflows/perl-os-matrix-show-logs.yml)

## Perl and OS matrix - avoid warnings
{id: perl-os-matrix-avoid-warnings}

![](examples/workflows/perl-os-matrix-no-warnings.yml)

## The Perl Planetarium
{id: github-actions-to-build-the-perl-planetarium}

* [Perl Planetarium](https://perl.theplanetarium.org/)

## About Github Action for Perl
{id: presentations-about-github-actions-for-perl}

* [Presentation](https://www.youtube.com/watch?v=WfXo71I7LmE&list=PLA9_Hq3zhoFznY_cvm5iAbUZ9T6-6zbIu&index=38) of Olaf Alders
* [Slides](https://github.com/oalders/presentations/blob/master/slides/4-github-actions/marp.pdf) of Olaf Alders


<!--
auto-build-and-test-dist

- perl-versions matrix generator of perl versions (will automatically include newer perls for you)

-->

