Gitleaks updates (#415) #2312
This file contains 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: 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@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- name: Validate composer.json and composer.lock | |
run: composer --working-dir=app validate | |
check-file-patterns: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- run: make --directory=app check-file-patterns | |
check-makefile: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-version: | |
- "8.3" | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2 | |
with: | |
coverage: none | |
php-version: ${{ matrix.php-version }} | |
- run: make --directory=app check-makefile | |
check-application-mapping: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-version: | |
- "8.3" | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2 | |
with: | |
coverage: none | |
php-version: ${{ matrix.php-version }} | |
- run: make --directory=app check-application-mapping | |
check-sri-macros-concat: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- run: make --directory=app check-sri-macros-concat | |
lint-php: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-version: | |
- "8.3" | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2 | |
with: | |
coverage: none | |
php-version: ${{ matrix.php-version }} | |
- run: make --directory=app lint-php | |
lint-latte: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-version: | |
- "8.3" | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2 | |
with: | |
coverage: none | |
php-version: ${{ matrix.php-version }} | |
- run: make --directory=app lint-latte | |
lint-neon: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-version: | |
- "8.3" | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2 | |
with: | |
coverage: none | |
php-version: ${{ matrix.php-version }} | |
- run: make --directory=app lint-neon | |
lint-xml: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- run: make --directory=app lint-xml-auto-install | |
phpcs: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-version: | |
- "8.3" | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- 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@3624ceb22c1c5a301c8db4169662070a689d9ea8 # v4.1.1 | |
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=app phpcs | |
phpstan: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-version: | |
- "8.3" | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- 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@3624ceb22c1c5a301c8db4169662070a689d9ea8 # v4.1.1 | |
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=app phpstan | |
phpstan-vendor: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-version: | |
- "8.3" | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- 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@3624ceb22c1c5a301c8db4169662070a689d9ea8 # v4.1.1 | |
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=app phpstan-vendor | |
tester: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-version: | |
- "8.3" | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- 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=app tester | |
- name: Failed test output, if any | |
if: failure() | |
run: for i in $(find ./app/tests -name \*.actual); do echo "--- $i"; cat $i; echo; echo; done | |
- name: Upload test code coverage | |
uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3 | |
if: success() | |
with: | |
name: Test code coverage (PHP ${{ matrix.php-version }}) | |
path: 'app/temp/coverage.html' | |
retention-days: 5 | |
psalm: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-version: | |
- "8.3" | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2 | |
with: | |
coverage: none | |
php-version: ${{ matrix.php-version }} | |
- run: make --directory=app psalm | |
composer-dependency-analyser: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-version: | |
- "8.3" | |
steps: | |
- uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 | |
- uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2 | |
with: | |
coverage: none | |
php-version: ${{ matrix.php-version }} | |
- run: make --directory=app composer-dependency-analyser |