CI for Mojo-UserAgent-Cached and Plack-Middleware-Greylist
Today I can report about two pull-requests for two web-related Perl projects. One of them is called Mojo-UserAgent-Cached and the other one is Plack-Middleware-Greylist.
Mojo-UserAgent-Cached
It was quite straight-forward. There were only two small issues. I had to install Module::Install before I could use the regular tools as the Makefile.PL relies on that. That's a known drawback of Module::Install for developers and maintainers.
The other problem was that tests were failing on Windows so I had to disable them. Anyway I sent a Pull-request it was merged soon after.
examples/mojo-useragent-cached/ci.yml
name: CI on: push: pull_request: workflow_dispatch: schedule: - cron: '42 5 * * *' jobs: test: strategy: fail-fast: false matrix: runner: [ubuntu-latest, macos-latest] # , windows-latest perl: [ '5.30', '5.36' ] exclude: - runner: windows-latest perl: '5.36' runs-on: ${{matrix.runner}} name: OS ${{matrix.runner}} Perl ${{matrix.perl}} steps: - uses: actions/checkout@v3 - 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 Modules run: | cpanm -v cpanm --notest Module::Install cpanm --installdeps --notest . - name: Show Errors on Windows 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 - name: Show Errors on Ubuntu if: ${{ failure() && startsWith( matrix.runner, 'ubuntu-')}} run: | cat /home/runner/.cpanm/work/*/build.log - name: Show Errors on OSX if: ${{ failure() && startsWith( matrix.runner, 'macos-')}} run: | cat /Users/runner/.cpanm/work/*/build.log - name: Run tests env: AUTHOR_TESTING: 1 RELEASE_TESTING: 1 run: | perl Makefile.PL make make test
Plack-Middleware-Greylist
Here too I had to disable the testing on Windows, this time because one of the dependencies was failing own Windows. The author then wanted to add testing more versions of Perl, but did it himself. I was contemplating a bit if I should send another PR where first we build the tar.gz on one version of Perl and then use that for testing, but there are no extra dependencies install for the building so I don't think that could reduce the time or the cpu usage.
examples/plack-middleware-greylist/ci.yml
name: CI on: push: pull_request: workflow_dispatch: schedule: - cron: '42 5 * * *' jobs: test: strategy: fail-fast: false matrix: runner: [ubuntu-latest, macos-latest] # , windows-latest perl: [ '5.30', '5.36' ] exclude: - runner: windows-latest perl: '5.36' runs-on: ${{matrix.runner}} name: OS ${{matrix.runner}} Perl ${{matrix.perl}} steps: - uses: actions/checkout@v3 - 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 dependencies run: | cpanm -v cpanm --notest --installdeps . - name: Show Errors on Windows 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 - name: Show Errors on Ubuntu if: ${{ failure() && startsWith( matrix.runner, 'ubuntu-')}} run: | cat /home/runner/.cpanm/work/*/build.log - name: Show Errors on OSX if: ${{ failure() && startsWith( matrix.runner, 'macos-')}} run: | cat /Users/runner/.cpanm/work/*/build.log - name: Run tests env: AUTHOR_TESTING: 1 RELEASE_TESTING: 1 run: | prove -l
Conclusion
That was easy.
Published on 2022-12-09