|
|
|
@ -14,6 +14,9 @@ concurrency: |
|
|
|
group: psalm-${{ github.head_ref || github.run_id }} |
|
|
|
cancel-in-progress: true |
|
|
|
|
|
|
|
permissions: |
|
|
|
contents: read |
|
|
|
|
|
|
|
jobs: |
|
|
|
static-analysis: |
|
|
|
runs-on: ubuntu-latest |
|
|
|
@ -21,12 +24,17 @@ jobs: |
|
|
|
name: static-psalm-analysis |
|
|
|
steps: |
|
|
|
- name: Checkout |
|
|
|
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 |
|
|
|
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 |
|
|
|
with: |
|
|
|
persist-credentials: false |
|
|
|
|
|
|
|
- name: Get php version |
|
|
|
id: versions |
|
|
|
uses: icewind1991/nextcloud-version-matrix@58becf3b4bb6dc6cef677b15e2fd8e7d48c0908f # v1.3.1 |
|
|
|
|
|
|
|
- name: Check enforcement of minimum PHP version ${{ steps.versions.outputs.php-min }} in psalm.xml |
|
|
|
run: grep 'phpVersion="${{ steps.versions.outputs.php-min }}' psalm.xml |
|
|
|
|
|
|
|
- name: Set up php${{ steps.versions.outputs.php-available }} |
|
|
|
uses: shivammathur/setup-php@c541c155eee45413f5b09a52248675b1a2575231 # v2.31.1 |
|
|
|
with: |
|
|
|
@ -34,14 +42,18 @@ jobs: |
|
|
|
extensions: bz2, ctype, curl, dom, fileinfo, gd, iconv, intl, json, libxml, mbstring, openssl, pcntl, posix, session, simplexml, xmlreader, xmlwriter, zip, zlib, sqlite, pdo_sqlite |
|
|
|
coverage: none |
|
|
|
ini-file: development |
|
|
|
# Temporary workaround for missing pcntl_* in PHP 8.3 |
|
|
|
ini-values: disable_functions= |
|
|
|
env: |
|
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
|
|
|
|
|
|
|
- name: Install dependencies |
|
|
|
run: composer i |
|
|
|
run: | |
|
|
|
composer remove nextcloud/ocp --dev |
|
|
|
composer i |
|
|
|
|
|
|
|
- name: Check for vulnerable PHP dependencies |
|
|
|
run: composer require --dev roave/security-advisories:dev-latest |
|
|
|
- name: Install nextcloud/ocp |
|
|
|
run: composer require --dev nextcloud/ocp:dev-${{ steps.versions.outputs.branches-max }} --ignore-platform-reqs --with-dependencies |
|
|
|
|
|
|
|
- name: Run coding standards check |
|
|
|
run: composer run psalm |
|
|
|
run: composer run psalm -- --threads=1 --monochrome --no-progress --output-format=github |