name: "CS" on: pull_request: push: branches: - master - "2.**" permissions: contents: read jobs: coding-standards: name: "CS Fixer, PHPStan & TwigCS" runs-on: "ubuntu-20.04" steps: - name: "Checkout" uses: "actions/checkout@v4" - name: "Install PHP" uses: "shivammathur/setup-php@v2" with: coverage: "none" php-version: "7.4" tools: cs2pr, pecl extensions: pdo, pdo_mysql, pdo_sqlite, pdo_pgsql, curl, imagick, pgsql, gd, tidy ini-values: "date.timezone=Europe/Paris" env: COMPOSER_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: "Setup MySQL" run: | sudo systemctl start mysql.service sudo mysql -u root -proot -h 127.0.0.1 -e "CREATE DATABASE wallabag_test" cp app/config/tests/parameters_test.mysql.yml app/config/parameters_test.yml - name: "Install dependencies with Composer" uses: "ramsey/composer-install@v3" with: composer-options: "--optimize-autoloader --prefer-dist" - name: "Run Composer dependency analyser" run: "bin/composer-dependency-analyser" - name: "Run PHP CS Fixer" run: "bin/php-cs-fixer fix --verbose --dry-run --format=checkstyle | cs2pr" - name: "Generate test cache for PHPStan" run: "php bin/console cache:clear --env=test" - name: "Run PHPStan" run: "php bin/phpstan analyse --no-progress --error-format=checkstyle | cs2pr" - name: "Run TwigCS" run: "php bin/twigcs --severity=error --display=blocking --reporter checkstyle app/ src/ | cs2pr" - name: "Run ergebnis/composer-normalize" run: "composer normalize --dry-run --no-check-lock"