From b8ea17b5ab4a9d8a1f93aa0c4ac5484d4b4df8d2 Mon Sep 17 00:00:00 2001 From: Brian Henry Date: Mon, 5 Aug 2024 20:43:47 -0700 Subject: [PATCH] update phpcbf workflow --- .github/phpcs.svg | 1 + .github/workflows/phpcbf.yml | 55 +++++++----------------------------- 2 files changed, 11 insertions(+), 45 deletions(-) create mode 100644 .github/phpcs.svg diff --git a/.github/phpcs.svg b/.github/phpcs.svg new file mode 100644 index 00000000..162a8732 --- /dev/null +++ b/.github/phpcs.svg @@ -0,0 +1 @@ +PHPCS: WPCS ❌PHPCSWPCS ❌ \ No newline at end of file diff --git a/.github/workflows/phpcbf.yml b/.github/workflows/phpcbf.yml index b6005512..503120d3 100644 --- a/.github/workflows/phpcbf.yml +++ b/.github/workflows/phpcbf.yml @@ -27,63 +27,28 @@ jobs: php: [ '7.4' ] steps: - - name: Checkout - uses: actions/checkout@v3 - - - name: Install PHP - uses: shivammathur/setup-php@v2 - with: - php-version: ${{ matrix.php }} - tools: composer, cs2pr - extensions: zip - - - name: Update environment config for GitHub Actions - env: - PLUGIN_SLUG: ${{ github.event.repository.name }} - run: | - find . -depth \( -name '.env.testing' \) -exec sed -i "s/TEST_SITE_DB_HOST=\"127.0.0.1\"/TEST_SITE_DB_HOST=\"127.0.0.1:${{ job.services.mysql.ports['3306'] }}\"/g" {} + - find . -depth \( -name '.env.testing' -o -name '*.cest' \) -exec sed -i "s/localhost:8080\/${{ env.PLUGIN_SLUG }}/localhost:8080/g" {} + - find . -depth \( -name 'dump.sql' \) -exec sed -i "s/localhost:8080\/${{ env.PLUGIN_SLUG }}/localhost:8080/g" {} + - - - name: Read .env.testing - uses: c-py/action-dotenv-to-setenv@v2 - with: - env-file: .env.testing - - - name: Configure MySQL - run: | - mysql -h 127.0.0.1 --port ${{ job.services.mysql.ports['3306'] }} -u root -ppassword -e "CREATE USER '"$TEST_DB_USER"'@'%' IDENTIFIED WITH mysql_native_password BY '"$TEST_DB_PASSWORD"';"; - mysql -h 127.0.0.1 --port ${{ job.services.mysql.ports['3306'] }} -u root -ppassword -e "CREATE DATABASE "$TEST_SITE_DB_NAME"; USE "$TEST_SITE_DB_NAME"; GRANT ALL PRIVILEGES ON "$TEST_SITE_DB_NAME".* TO '"$TEST_DB_USER"'@'%';"; - mysql -h 127.0.0.1 --port ${{ job.services.mysql.ports['3306'] }} -u root -ppassword -e "CREATE DATABASE "$TEST_DB_NAME"; USE "$TEST_DB_NAME"; GRANT ALL PRIVILEGES ON "$TEST_DB_NAME".* TO '"$TEST_DB_USER"'@'%';"; - - # - name: Create Composer auth.json - # run: php -r "file_put_contents( 'auth.json', json_encode( [ 'http-basic' => [ 'blog.brianhenry.ie' => [ 'username' => '"${{ secrets.COMPOSER_AUTH_SECRET }}"', 'password' => 'satispress' ] ] ] ) );" - - - name: Run composer install - continue-on-error: true - run: composer install - - - name: Create wpconfig ... the composer.json creation didn't work - run: | - export $(grep -v '^#' .env.testing | xargs); - sudo vendor/bin/wp config create --dbname=$TEST_SITE_DB_NAME --dbuser=$TEST_SITE_DB_USER --dbpass=$TEST_SITE_DB_PASSWORD --dbhost=127.0.0.1:${{ job.services.mysql.ports['3306'] }} --allow-root --extra-php="define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true );" - name: Run PHPCBF to fix what it can continue-on-error: true run: vendor/bin/phpcbf - name: Run PHPCS to add annotations to the code + id: run-phpcs continue-on-error: true run: vendor/bin/phpcs -q -n --report=checkstyle | cs2pr - name: Discard environment changes before commiting other changes - run: | - git checkout -- .env.testing - git checkout -- tests/_data/dump.sql + run: git checkout -- .env.testing + + - name: Check success + if: steps.run-phpcs.outcome == 'success' + run: curl -o .github/phpcs.svg https://img.shields.io/badge/PHPCS-WPCS%20${{ steps.phpstan-level.outputs.level}}-8892BF.svg + + - name: Check failures + if: steps.run-phpcs.outcome != 'success' + run: curl -o .github/phpcs.svg https://img.shields.io/badge/PHPCS-WPCS%20${{ steps.phpstan-level.outputs.level}}❌-lightgrey.svg - # TODO: copy this to boilerplate after confirming it works - name: Git pull in case chanages were committed in another Action - if: steps.auto-commit-action.outputs.changes_detected == 'true' run: git pull - name: Commit PHPCBF changes