Almalinux 9 testing #73
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: linux | |
on: | |
push: | |
branches: | |
- '*' | |
tags-ignore: | |
- '*' | |
pull_request: | |
types: [ opened, synchronize, reopened, edited, ready_for_review ] | |
jobs: | |
# | |
# A quick and cheap test first before running other jobs | |
# | |
ubuntu: | |
env: | |
PERL_USE_UNSAFE_INC: 0 | |
AUTHOR_TESTING: 1 | |
AUTOMATED_TESTING: 1 | |
RELEASE_TESTING: 1 | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v4 | |
- run: openssl version | |
- run: perl -V | |
- name: uses install-with-cpm | |
uses: perl-actions/install-with-cpm@v1 | |
with: | |
cpanfile: "cpanfile" | |
- name: Makefile.PL | |
run: perl -I$(pwd) Makefile.PL | |
- run: make && ( make test || prove -wbvm t/*.t ) | |
openssl-matrix: | |
env: | |
PERL_USE_UNSAFE_INC: 0 | |
AUTHOR_TESTING: 1 | |
AUTOMATED_TESTING: 1 | |
RELEASE_TESTING: 1 | |
runs-on: ubuntu-latest | |
needs: [ubuntu] | |
name: "OpenSSL ${{ matrix.os-version }}" | |
strategy: | |
fail-fast: false | |
matrix: | |
os-version: | |
- debian:buster # OpenSSL 1.1.1 | |
- debian:bullseye # OpenSSL 1.1.1 | |
- debian:bookworm # OpenSSL 3.0.x | |
- almalinux:9 # OpenSSL with new crypto policies (RHEL-compatible) | |
container: ${{ matrix.os-version }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies | |
run: | | |
(apt-get update && | |
apt-get install -y openssl perl make gcc libssl-dev perl sudo curl) || | |
(yum install --skip-broken -y openssl perl make gcc openssl-devel perl sudo curl) | |
- run: openssl version | |
- run: perl -V | |
- name: uses install-with-cpm | |
uses: perl-actions/install-with-cpm@v1 | |
with: | |
cpanfile: "cpanfile" | |
- name: Makefile.PL | |
run: perl -I$(pwd) Makefile.PL | |
- run: make && prove -wbvm t/*.t | |
# | |
# List of Perl Versions available | |
# | |
perl-versions: | |
runs-on: ubuntu-latest | |
needs: [openssl-matrix] | |
name: List Perl versions | |
outputs: | |
perl-versions: ${{ steps.action.outputs.perl-versions }} | |
steps: | |
- id: action | |
uses: perl-actions/perl-versions@v1 | |
with: | |
since-perl: v5.10 | |
with-devel: true | |
# | |
# The Perl matrix on linux | |
# | |
perl: | |
env: | |
PERL_USE_UNSAFE_INC: 0 | |
AUTHOR_TESTING: 1 | |
AUTOMATED_TESTING: 1 | |
RELEASE_TESTING: 1 | |
runs-on: ubuntu-latest | |
needs: [openssl-matrix,perl-versions] | |
name: "Perl ${{ matrix.perl-version }}" | |
strategy: | |
fail-fast: false | |
matrix: | |
perl-version: ${{ fromJson (needs.perl-versions.outputs.perl-versions) }} | |
container: perldocker/perl-tester:${{ matrix.perl-version }} | |
steps: | |
- uses: actions/checkout@v4 | |
- run: openssl version | |
- run: perl -V | |
- name: Deps for testing | |
run: | | |
cpanm --notest Crypt::OpenSSL::Random Crypt::OpenSSL::Guess Test::CPAN::Meta Perl::MinimumVersion Test::Pod::Coverage Test::Pod Test::MinimumVersion Crypt::OpenSSL::Bignum ||: | |
cpanm --notest Crypt::OpenSSL::Random Crypt::OpenSSL::Guess Test::CPAN::Meta Perl::MinimumVersion Test::Pod::Coverage Test::Pod Test::MinimumVersion Crypt::OpenSSL::Bignum | |
# not available < 5.12 | |
cpanm --notest Test::Kwalitee ||: | |
- run: perl Makefile.PL | |
- run: make && ( make test || prove -wbvm t/*.t ) | |
# | |
# Windows | |
# | |
windows: | |
env: | |
PERL_USE_UNSAFE_INC: 0 | |
AUTHOR_TESTING: 0 | |
AUTOMATED_TESTING: 1 | |
RELEASE_TESTING: 0 | |
needs: [openssl-matrix, perl-versions] | |
runs-on: windows-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
perl-version: [latest] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Perl | |
run: | | |
# skip installing perl if it is already installed. | |
if (!(Test-Path "C:\strawberry\perl\bin")) { | |
choco install strawberryperl | |
} | |
echo @" | |
C:\strawberry\c\bin | |
C:\strawberry\perl\site\bin | |
C:\strawberry\perl\bin | |
"@ | | |
Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append | |
- run: openssl version | |
- run: perl -V | |
- name: Deps for testing | |
run: cpanm --notest Crypt::OpenSSL::Random Crypt::OpenSSL::Guess | |
- run: perl Makefile.PL | |
- run: make && ( make test || prove -wbvm t/*.t ) |