From 4a52ef88284322a94739079494e3c85a453dfc87 Mon Sep 17 00:00:00 2001 From: schlessera Date: Tue, 26 May 2020 06:26:36 +0000 Subject: [PATCH] Update file(s) from wp-cli/.github --- .github/workflows/code-quality.yml | 76 ++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 .github/workflows/code-quality.yml diff --git a/.github/workflows/code-quality.yml b/.github/workflows/code-quality.yml new file mode 100644 index 00000000..949714ec --- /dev/null +++ b/.github/workflows/code-quality.yml @@ -0,0 +1,76 @@ +name: Code Quality Checks + +on: pull_request + +jobs: + lint: + name: Linter + runs-on: ubuntu-latest + steps: + - name: Check out source code + uses: actions/checkout@v2 + - name: Check existence of composer.json file + id: check_composer_file + uses: andstor/file-existence-action@v1 + with: + files: "composer.json" + - name: Get Composer cache Directory + if: steps.check_composer_file.outputs.files_exists == 'true' + id: composer-cache + run: | + echo "::set-output name=dir::$(composer config cache-files-dir)" + - name: Use Composer cache + if: steps.check_composer_file.outputs.files_exists == 'true' + uses: actions/cache@v1 + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + ${{ runner.os }}-composer- + - name: Install dependencies + if: steps.check_composer_file.outputs.files_exists == 'true' + run: composer install --dev --prefer-dist --no-progress --no-suggest + - name: Check existence of vendor/bin/parallel-lint file + id: check_linter_file + uses: andstor/file-existence-action@v1 + with: + files: "vendor/bin/parallel-lint" + - name: Run Linter + if: steps.check_linter_file.outputs.files_exists == 'true' + run: vendor/bin/parallel-lint -j 10 . --exclude vendor --checkstyle | cs2pr --graceful-warnings + + phpcs: + name: PHPCS + runs-on: ubuntu-latest + steps: + - name: Check out source code + uses: actions/checkout@v2 + - name: Check existence of composer.json & phpcs.xml.dist files + id: check_files + uses: andstor/file-existence-action@v1 + with: + files: "composer.json, phpcs.xml.dist" + - name: Get Composer cache Directory + if: steps.check_files.outputs.files_exists == 'true' + id: composer-cache + run: | + echo "::set-output name=dir::$(composer config cache-files-dir)" + - name: Use Composer cache + if: steps.check_files.outputs.files_exists == 'true' + uses: actions/cache@v1 + with: + path: ${{ steps.composer-cache.outputs.dir }} + key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }} + restore-keys: | + ${{ runner.os }}-composer- + - name: Install dependencies + if: steps.check_files.outputs.files_exists == 'true' + run: composer install --dev --prefer-dist --no-progress --no-suggest + - name: Check existence of vendor/bin/phpcs file + id: check_phpcs_binary_file + uses: andstor/file-existence-action@v1 + with: + files: "vendor/bin/parallel-lint" + - name: Run PHPCS + if: steps.check_phpcs_binary_file.outputs.files_exists == 'true' + run: vendor/bin/phpcs -q --report=checkstyle | cs2pr --graceful-warnings