name: CI for linux distributions, on php8 on: pull_request: push: schedule: - cron: '0 16 * * 5' jobs: alpine_82: runs-on: ubuntu-latest container: alpine:edge steps: - name: Checkout code uses: actions/checkout@v3 - name: Remove php7 tests for php8 run: rm -rf src/tests/*php7*/ - name: Remove tests failing on alpine for wathever reason run: rm -rf src/tests/*session*/ src/tests/broken_configuration/ src/tests/*cookie* src/tests/upload_validation/ - name: Install dependencies run: apk add php82-dev php82-cgi php82-simplexml php82-xml pcre-dev build-base php82-pear php82-openssl re2c - name: Install pecl continue-on-error: true run: pecl install vld-beta - name: Build and run the testsuite continue-on-error: true run: make tests - name: Show logs in case of failure if: ${{ failure() }} continue-on-error: true run: | grep -r . ./src/tests/*/*.out grep -r . ./src/tests/*/*.diff debian: runs-on: ubuntu-latest container: debian:testing steps: - name: Checkout code uses: actions/checkout@v3 - name: Install dependencies run: | apt update DEBIAN_FRONTEND=noninteractive apt install -y php-dev php-pear re2c - name: Install pecl run: pecl install vld-beta continue-on-error: true - name: Build and run the testsuite run: make release tests continue-on-error: true - name: Show logs in case of failure if: ${{ failure() }} run: | grep -r . --include='*.log' src/tests fedora: runs-on: ubuntu-latest container: fedora:latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Install dependencies run: | dnf install -y php-devel php-pear make re2c - name: Install pecl run: pecl install vld-beta - name: Build and run the testsuite run: make release tests - name: Show logs in case of failure if: ${{ failure() }} run: | grep -r . --include='*.log' src/tests archlinux: runs-on: ubuntu-latest container: archlinux:latest steps: - name: Checkout code uses: actions/checkout@v3 - name: Install dependencies continue-on-error: true run: | pacman --sync --refresh --noconfirm --quiet php8 wget autoconf gcc make re2c wget https://pear.php.net/go-pear.phar php go-pear.phar - name: Install pecl continue-on-error: true run: pecl install vld-beta - name: Build SP and run the testsuite continue-on-error: true run: make tests - name: Show logs in case of failure continue-on-error: true if: ${{ failure() }} run: | grep -r . --include='*.log' src/tests