Earlier we saw how to Add GitHub Actions (CI) to a Perl module that is using Dist::Zilla. This time I tried to do it another distribution found on CPAN::Digger.
I found out that the command I used to install the dependencies did not install several modules needed for testing.
I am not 100% sure that I used the proper command, so I opened a ticket reporting the issue and added an extra command to the GitHub Action configuration file to install the missing dependencies. See the Pull-Request
The authors of the package will be able to decide if I used the command incorrectly, if they might need to add the test-modules to the Dist::Zilla configuration, or if the current solution is fine for them.
The extra line is
cpanm Test::BOM Test::NoTabs Test::Pod::Coverage Test::Pod Pod::Coverage::TrustPod
I've included the whole configuration file here for reference
examples/dist-zilla-perlsrvde.yml
name: Perl
on:
  push:
  pull_request:
jobs:
  test:
    strategy:
      fail-fast: false
      matrix:
        runner: [ubuntu-latest] # , macos-latest, windows-latest
        perl: [ '5.32' ]
    runs-on: ${{matrix.runner}}
    name: OS ${{matrix.runner}} Perl ${{matrix.perl}}
    steps:
    - uses: actions/checkout@v2
    - name: Set up perl
      uses: shogo82148/actions-setup-perl@v1
      with:
          perl-version: ${{ matrix.perl }}
          distribution: ${{ ( startsWith( matrix.runner, 'windows-' ) && 'strawberry' ) || 'default' }}
    - name: Show Perl Version
      run: |
        perl -v
    - name: Install Dist::Zilla
      run: |
        cpanm -v
        cpanm --notest Dist::Zilla
    - name: Install Modules
      run: |
        dzil authordeps --missing | cpanm --notest
        cpanm Test::BOM Test::NoTabs Test::Pod::Coverage Test::Pod Pod::Coverage::TrustPod
    - name: Run tests
      run: |
        dzil test
    - name: Show Errors
      if:  ${{ failure() && startsWith( matrix.runner, 'windows-')}}
      run: |
         ls -l C:/Users/
         ls -l C:/Users/RUNNER~1/
         cat C:/Users/runneradmin/.cpanm/work/*/build.log