+++ /dev/null
-name: Psalm
-
-on:
- pull_request:
- push:
- branches:
- - master
- - stable*
-
-jobs:
- generate-report:
- runs-on: ubuntu-latest
-
- steps:
- - name: Checkout
- uses: actions/checkout@v3
- with:
- submodules: true
-
- - name: Set up php
- uses: shivammathur/setup-php@v2
- with:
- php-version: '8.0'
- extensions: ctype,curl,dom,fileinfo,gd,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
- coverage: none
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-
- - name: Composer install
- run: composer i
-
- - name: Psalm
- # Make sure we pass and still upload the report
- continue-on-error: true
- run: composer run psalm -- --monochrome --no-progress --output-format=github --report=psalm.sarif
-
- - name: Upload report to GitHub
- if: always()
- uses: github/codeql-action/upload-sarif@v2
- with:
- sarif_file: psalm.sarif
-
- generate-security-report:
- runs-on: ubuntu-latest
-
- steps:
- - name: Checkout
- uses: actions/checkout@v3
- with:
- submodules: true
-
- - name: Set up php
- uses: shivammathur/setup-php@v2
- with:
- php-version: '8.0'
- extensions: ctype,curl,dom,fileinfo,gd,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
- coverage: none
-
- - name: Composer install
- run: composer i
-
- - name: Psalm
- # Make sure we pass and still upload the report
- continue-on-error: true
- run: composer run psalm -- --monochrome --no-progress --output-format=github --taint-analysis --report=psalm.sarif
-
- - name: Upload report to GitHub
- if: always()
- uses: github/codeql-action/upload-sarif@v2
- with:
- sarif_file: psalm.sarif
run: composer i
- name: Psalm
- run: composer run psalm -- --monochrome --no-progress --output-format=github --update-baseline || ( git diff -- . ':!lib/composer' && exit 1 )
-
- - name: Check diff
+ run: composer run psalm -- --monochrome --no-progress --output-format=github --update-baseline --report=results.sarif || ( git diff -- . ':!lib/composer' && exit 1 )
+ - name: Show potential changes in Psalm baseline
run: git diff -- . ':!lib/composer'
+ - name: Upload Analysis results to GitHub
+ uses: github/codeql-action/upload-sarif@v2
+ with:
+ sarif_file: results.sarif
- - name: Show potential changes in Psalm baseline
- run: |
- bash -c "[[ ! \"`git status --porcelain build/psalm-baseline.xml`\" ]] || ( echo 'Uncommited changes in Psalm baseline' && git status && git diff build/psalm-baseline.xml)"
+ static-code-analysis-security:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v3
+ with:
+ submodules: recursive
+ - name: Set up php
+ uses: shivammathur/setup-php@master
+ with:
+ php-version: 8.0
+ extensions: ctype,curl,dom,fileinfo,gd,intl,json,mbstring,openssl,pdo_sqlite,posix,sqlite,xml,zip
+ coverage: none
+ - name: Composer install
+ run: composer i
+ - name: Psalm taint analysis
+ run: composer run psalm -- --monochrome --no-progress --output-format=github --update-baseline --report=results.sarif --taint-analysis || ( git diff -- . ':!lib/composer' && exit 1 )
+ - name: Upload Security Analysis results to GitHub
+ uses: github/codeql-action/upload-sarif@v2
+ with:
+ sarif_file: results.sarif
static-code-analysis-ocp:
runs-on: ubuntu-latest
- name: Psalm
run: composer run psalm -- -c psalm-ocp.xml --monochrome --no-progress --output-format=github --update-baseline || ( git diff -- . ':!lib/composer' && exit 1 )
-
- - name: Check diff
- run: git diff -- . ':!lib/composer'
-
- name: Show potential changes in Psalm baseline
- run: |
- bash -c "[[ ! \"`git status --porcelain build/psalm-baseline-ocp.xml`\" ]] || ( echo 'Uncommited changes in Psalm baseline' && git status && git diff build/psalm-baseline.xml)"
+ run: git diff -- . ':!lib/composer'