forked from LibreBooking/app
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This was copied for the most part from https://github.com/phpmyadmin/phpmyadmin/blob/b094f337466a1188ad755b33be5a7b7b25a70916/.github/workflows/lint-and-analyse-php.yml
- Loading branch information
1 parent
0b61505
commit 27867da
Showing
2 changed files
with
103 additions
and
0 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,87 @@ | ||
name: Lint and analyse php files | ||
|
||
# If a pull-request is pushed then cancel all previously running jobs related | ||
# to that pull-request | ||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} | ||
cancel-in-progress: true | ||
|
||
on: | ||
# push: | ||
pull_request: | ||
types: [opened, synchronize, reopened] | ||
branches: | ||
- develop | ||
|
||
permissions: | ||
contents: read | ||
|
||
jobs: | ||
lint-php-files: | ||
runs-on: ubuntu-latest | ||
strategy: | ||
matrix: | ||
php-version: ["8.1"] | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v4 | ||
|
||
- name: Set up PHP ${{ matrix.php-version }} | ||
uses: shivammathur/setup-php@v2 | ||
with: | ||
php-version: ${{ matrix.php-version }} | ||
|
||
- name: Validate composer.json and composer.lock | ||
run: composer validate --strict | ||
|
||
- name: Install Composer dependencies | ||
# Allow the previous check to fail but not abort | ||
if: always() | ||
uses: ramsey/composer-install@v2 | ||
with: | ||
# Ignore zip for php-webdriver/webdriver | ||
composer-options: "--ignore-platform-req=ext-zip" | ||
|
||
# - name: Cache coding-standard | ||
# # Allow the previous check to fail but not abort | ||
# if: always() | ||
# uses: actions/cache@v4 | ||
# with: | ||
# path: .phpcs-cache | ||
# key: phpcs-cache | ||
|
||
- name: Lint PHP files | ||
# Allow the previous check to fail but not abort | ||
if: always() | ||
run: ./tests/ci-phplint | ||
|
||
- name: Check coding-standard | ||
# Allow the previous check to fail but not abort | ||
if: always() | ||
run: composer phpcs | ||
|
||
analyse-php: | ||
runs-on: ubuntu-latest | ||
strategy: | ||
matrix: | ||
php-version: ["8.1"] | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v4 | ||
|
||
- name: Set up PHP ${{ matrix.php-version }} | ||
uses: shivammathur/setup-php@v2 | ||
with: | ||
php-version: ${{ matrix.php-version }} | ||
extensions: mbstring, iconv, mysqli, zip, gd, bz2 | ||
|
||
- name: Install Composer dependencies | ||
uses: ramsey/composer-install@v2 | ||
|
||
- name: Analyse files with PHPStan | ||
run: composer phpstan -- --memory-limit 2G | ||
|
||
- name: Analyse files with Psalm | ||
# Allow the previous check to fail but not abort | ||
if: always() | ||
run: composer psalm -- --shepherd |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
#!/bin/sh | ||
|
||
FILES=$(find . -name '*.php' -not -path './vendor/*' -not -path './tmp/*' -not -path './node_modules/*') | ||
|
||
result=0 | ||
for FILE in $FILES ; do | ||
if [ -f "$FILE" ] ; then | ||
php -l "$FILE" | ||
ret=$? | ||
if [ $ret != 0 ] ; then | ||
result=$ret | ||
fi | ||
fi | ||
done | ||
|
||
exit $result |