-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[PT-1550] Add GitHub Actions workflow for code quality checks
- Set up GitHub Actions to run phpcs, phpmd, and phpstan on pull requests to main branch. - Ensure code quality and standards compliance with automated checks.
- Loading branch information
1 parent
d730a7d
commit 7adcc0a
Showing
1 changed file
with
47 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
name: Code Quality Check | ||
|
||
on: | ||
pull_request: | ||
branches: | ||
- main | ||
|
||
jobs: | ||
code_quality: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v2 | ||
|
||
- name: Set up PHP | ||
uses: shivammathur/setup-php@v2 | ||
with: | ||
php-version: '8.1' | ||
tools: composer | ||
|
||
- name: Set up Magento authentication | ||
run: composer config http-basic.repo.magento.com 5a828b358382e3a772039c11a81485c4 0c59305c4d6554d0087ff128f86602ee | ||
|
||
- name: Install Magento 2 | ||
run: composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition:2.4.7 magento | ||
|
||
- name: Configure Composer allow-plugins | ||
working-directory: magento | ||
run: composer config --no-plugins allow-plugins.phpstan/extension-installer true | ||
|
||
- name: Install phpstan | ||
working-directory: magento | ||
run: composer require bitexpert/phpstan-magento | ||
|
||
- name: Create phpstan.neon | ||
run: echo -e "parameters:\n excludePaths:\n - ./magento/**" > phpstan.neon | ||
|
||
- name: Run PHP Mess Detector | ||
run: magento/vendor/bin/phpmd . ansi cleancode,codesize,controversial,design,naming,unusedcode --exclude magento/ | ||
|
||
- name: Run PHP CodeSniffer | ||
run: magento/vendor/bin/phpcs --standard=PSR12,Magento2 --ignore=magento/* . | ||
|
||
- name: Run PHPStan | ||
run: magento/vendor/bin/phpstan --level=9 analyse . | ||
|