|
name: web |
|
|
|
on: [push, pull_request] |
|
|
|
jobs: |
|
build: |
|
runs-on: ${{ matrix.operating-system }} |
|
|
|
strategy: |
|
matrix: |
|
operating-system: [ubuntu-latest] |
|
php-versions: ['7.2', '7.3', '7.4', '8.0', '8.1', '8.2', '8.3', '8.4', '8.5'] |
|
name: PHP ${{ matrix.php-versions }} on ${{ matrix.operating-system }} |
|
steps: |
|
- name: Checkout |
|
uses: actions/checkout@v4 |
|
|
|
- name: Set up PHP |
|
uses: shivammathur/setup-php@v2 |
|
with: |
|
php-version: ${{ matrix.php-versions }} |
|
extensions: pcre, apcu, curl |
|
|
|
- name: Validate composer.json and composer.lock |
|
run: composer validate |
|
|
|
- name: Lint |
|
run: | |
|
lintPaths=() |
|
lintPaths+=("${GITHUB_WORKSPACE}/src") |
|
for lintPath in "${lintPaths[@]}" |
|
do |
|
for file in `find "$lintPath"` |
|
do |
|
EXTENSION="${file##*.}" |
|
if [ "$EXTENSION" == "php" ] |
|
then |
|
RESULTS=`php -l "$file"` |
|
if [ "$RESULTS" != "No syntax errors detected in $file" ] |
|
then |
|
echo $RESULTS |
|
fi |
|
fi |
|
done |
|
done |