Skip to content

* for version 20240918.001 #265

* for version 20240918.001

* for version 20240918.001 #265

# This workflow checks that Business::ISBN::Data does not break its
# upstream module, Business::ISBN.
name: upstream
on:
push:
workflow_dispatch:
jobs:
perl:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os:
- ubuntu-20.04
perl-version:
- 'latest'
container:
image: perl:${{ matrix.perl-version }}
steps:
- uses: actions/checkout@v3
# Some older versions of Perl have trouble with hostnames in certs. I
# haven't figured out why.
- name: Setup environment
run: |
echo "PERL_LWP_SSL_VERIFY_HOSTNAME=0" >> $GITHUB_ENV
# I had some problems with openssl on Ubuntu, so I punted by installing
# cpanm first, which is easy. I can install IO::Socket::SSL with that,
# then switch back to cpan. I didn't explore this further, but what you
# see here hasn't caused problems for me.
# Need HTTP::Tiny 0.055 or later.
- name: Install cpanm and multiple modules
run: |
curl -L https://cpanmin.us | perl - App::cpanminus
cpanm --notest IO::Socket::SSL HTTP::Tiny ExtUtils::MakeMaker Test::Manifest
# Install the dependencies, again not testing them. This installs the
# module in the current directory, so we end up installing the module,
# but that's not a big deal.
- name: Install dependencies
run: |
cpanm --notest .
- name: Setup environment
run: |
echo "PERL5LIB=blib/lib" >> $GITHUB_ENV
- name: Install Business::ISBN
run: |
perl Makefile.PL
make
perl -MBusiness::ISBN::Data -le 'print q(Business::ISBN::Data: ), Business::ISBN::Data->VERSION'
cpanm --verbose --test-only Business::ISBN