name: CI on: push: branches: [main] pull_request: jobs: lint: name: PHP lint (${{ matrix.php }}) runs-on: ubuntu-latest strategy: fail-fast: false matrix: php: ['7.4', '8.0', '8.1', '8.2', '8.3', '8.4'] steps: - uses: actions/checkout@v4 - uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php }} coverage: none - name: Syntax check run: find . -path ./vendor -prune -o -name '*.php' -print0 | xargs -0 -n1 php -l phpcs: name: WordPress Coding Standards runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: shivammathur/setup-php@v2 with: php-version: '8.2' coverage: none tools: composer - name: Install dev dependencies run: composer install --no-interaction --prefer-dist - name: Run PHPCS run: vendor/bin/phpcs --report=checkstyle | cs2pr || vendor/bin/phpcs plugin-check: name: WordPress.org Plugin Check runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Build distributable run: bash bin/build-zip.sh - name: Run Plugin Check uses: wordpress/plugin-check-action@v1 with: build-dir: ./build/m365-login exclude-directories: ''