diff --git a/.github/workflows/business-isbn.yaml b/.github/workflows/business-isbn.yaml new file mode 100644 index 0000000..56237b2 --- /dev/null +++ b/.github/workflows/business-isbn.yaml @@ -0,0 +1,47 @@ +# This workflow checks that Business::ISBN::Data does not break its +# upstream module, Business::ISBN. + +name: release + +permissions: + contents: write + +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: Install Business::ISBN + run: | + cpanm Business::ISBN