Merge 4.7 into 4.8 (#3075) #295
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: "Static Analysis" | |
on: | |
push: | |
pull_request: | |
workflow_call: | |
inputs: | |
ref: | |
description: "The git ref to check" | |
type: string | |
required: true | |
env: | |
PHP_VERSION: "8.2" | |
DRIVER_VERSION: "stable" | |
jobs: | |
phpstan: | |
runs-on: "ubuntu-22.04" | |
continue-on-error: true | |
strategy: | |
matrix: | |
php: | |
- '8.1' | |
- '8.2' | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.event_name == 'workflow_dispatch' && inputs.ref || github.ref }} | |
- name: "Get SHA hash of checked out ref" | |
if: ${{ github.event_name == 'workflow_dispatch' }} | |
run: | | |
echo CHECKED_OUT_SHA=$(git rev-parse HEAD) >> $GITHUB_ENV | |
- name: Setup PHP | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: ${{ matrix.php }} | |
extensions: curl, mbstring | |
tools: composer:v2 | |
coverage: none | |
- name: Cache dependencies | |
id: composer-cache | |
uses: actions/cache@v4 | |
with: | |
path: ./vendor | |
key: composer-${{ hashFiles('**/composer.lock') }} | |
- name: Install dependencies | |
run: composer install | |
- name: Restore cache PHPStan results | |
id: phpstan-cache-restore | |
uses: actions/cache/restore@v4 | |
with: | |
path: .cache | |
key: "phpstan-result-cache-${{ matrix.php }}-${{ github.run_id }}" | |
restore-keys: | | |
phpstan-result-cache- | |
- name: Run PHPStan | |
run: ./vendor/bin/phpstan analyse --no-interaction --no-progress --ansi --error-format=sarif > phpstan.sarif | |
continue-on-error: true | |
- name: "Upload SARIF report" | |
if: ${{ github.event_name != 'workflow_dispatch' }} | |
uses: "github/codeql-action/upload-sarif@v3" | |
with: | |
sarif_file: phpstan.sarif | |
- name: "Upload SARIF report" | |
if: ${{ github.event_name == 'workflow_dispatch' }} | |
uses: "github/codeql-action/upload-sarif@v3" | |
with: | |
sarif_file: phpstan.sarif | |
ref: ${{ inputs.ref }} | |
sha: ${{ env.CHECKED_OUT_SHA }} | |
- name: Save cache PHPStan results | |
id: phpstan-cache-save | |
if: always() | |
uses: actions/cache/save@v4 | |
with: | |
path: .cache | |
key: ${{ steps.phpstan-cache-restore.outputs.cache-primary-key }} |