Skip to content

Update packages (#392) #2222

Update packages (#392)

Update packages (#392) #2222

Workflow file for this run

name: PHP tests
on:
push:
pull_request:
workflow_dispatch:
permissions:
contents: read
jobs:
info:
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- "8.3"
steps:
- name: OS info
run: cat /etc/os-release
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2
with:
coverage: none
php-version: ${{ matrix.php-version }}
- name: PHP info
run: |
php -v
php -m
composer-validate:
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- "8.3"
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Validate composer.json and composer.lock
run: composer --working-dir=site validate
check-file-patterns:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- run: make --directory=site check-file-patterns
check-makefile:
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- "8.3"
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2
with:
coverage: none
php-version: ${{ matrix.php-version }}
- run: make --directory=site check-makefile
check-application-mapping:
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- "8.3"
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2
with:
coverage: none
php-version: ${{ matrix.php-version }}
- run: make --directory=site check-application-mapping
check-sri-macros-concat:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- run: make --directory=site check-sri-macros-concat
lint-php:
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- "8.3"
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2
with:
coverage: none
php-version: ${{ matrix.php-version }}
- run: make --directory=site lint-php
lint-latte:
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- "8.3"
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2
with:
coverage: none
php-version: ${{ matrix.php-version }}
- run: make --directory=site lint-latte
lint-neon:
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- "8.3"
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2
with:
coverage: none
php-version: ${{ matrix.php-version }}
- run: make --directory=site lint-neon
lint-xml:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- run: make --directory=site lint-xml-auto-install
phpcs:
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- "8.3"
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Get PHP_CodeSniffer cache file pattern
id: phpcs-cache
run: echo "file=$(php -r "echo sys_get_temp_dir() . '/phpcs.*';")" >> $GITHUB_OUTPUT
- uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
with:
path: ${{ steps.phpcs-cache.outputs.file }}
key: phpcs-cache-php${{ matrix.php-version }}
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2
with:
coverage: none
php-version: ${{ matrix.php-version }}
- run: make --directory=site phpcs
phpstan:
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- "8.3"
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Get PHPStan result cache directory
id: phpstan-cache
run: echo "dir=$(php -r "echo sys_get_temp_dir() . '/phpstan';")" >> $GITHUB_OUTPUT
- uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
with:
path: ${{ steps.phpstan-cache.outputs.dir }}
key: phpstan-cache-php${{ matrix.php-version }}
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2
with:
coverage: none
php-version: ${{ matrix.php-version }}
- run: make --directory=site phpstan
phpstan-vendor:
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- "8.3"
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- name: Get PHPStan result cache directory
id: phpstan-cache
run: echo "dir=$(php -r "echo sys_get_temp_dir() . '/phpstan';")" >> $GITHUB_OUTPUT
- uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
with:
path: ${{ steps.phpstan-cache.outputs.dir }}
key: phpstan-vendor-cache-php${{ matrix.php-version }}
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2
with:
coverage: none
php-version: ${{ matrix.php-version }}
- run: make --directory=site phpstan-vendor
tester:
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- "8.3"
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2
with:
coverage: pcov
php-version: ${{ matrix.php-version }}
- name: Create symlink in /srv/www
run: |
sudo mkdir --parents /srv/www
sudo ln --symbolic $GITHUB_WORKSPACE /srv/www
- run: make --directory=site tester
- name: Failed test output, if any
if: failure()
run: for i in $(find ./site/tests -name \*.actual); do echo "--- $i"; cat $i; echo; echo; done
- name: Upload test code coverage
uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0
if: success()
with:
name: Test code coverage (PHP ${{ matrix.php-version }})
path: 'site/temp/coverage.html'
retention-days: 5
psalm:
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- "8.3"
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2
with:
coverage: none
php-version: ${{ matrix.php-version }}
- run: make --directory=site psalm
composer-dependency-analyser:
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- "8.3"
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2
with:
coverage: none
php-version: ${{ matrix.php-version }}
- run: make --directory=site composer-dependency-analyser