# This workflow uses actions that are not certified by GitHub. # They are provided by a third-party and are governed by # separate terms of service, privacy policy, and support # documentation. # PHPMD is a spin-off project of PHP Depend and # aims to be a PHP equivalent of the well known Java tool PMD. # What PHPMD does is: It takes a given PHP source code base # and look for several potential problems within that source. # These problems can be things like: # Possible bugs # Suboptimal code # Overcomplicated expressions # Unused parameters, methods, properties # More details at https://phpmd.org/ name: PHPMD on: push: branches: [ "master" ] pull_request: # The branches below must be a subset of the branches above branches: [ "master" ] permissions: contents: read jobs: PHPMD: name: Run PHPMD scanning runs-on: ubuntu-latest permissions: contents: read # for checkout to fetch code security-events: write # for github/codeql-action/upload-sarif to upload SARIF results actions: read # only required for a private repository by github/codeql-action/upload-sarif to get the Action run status steps: - name: Checkout code uses: actions/checkout@v4 - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: '8.0' coverage: none tools: phpmd - name: Build IFM run: php ./compiler.php - name: Run PHPMD run: phpmd ./src github cleancode,design,unusedcode --exclude './src/includes/*' --ignore-violations-on-exit continue-on-error: true