Skip to content

Commit

Permalink
update phpcbf workflow
Browse files Browse the repository at this point in the history
  • Loading branch information
BrianHenryIE committed Aug 6, 2024
1 parent 1f70b1f commit b8ea17b
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 45 deletions.
1 change: 1 addition & 0 deletions .github/phpcs.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
55 changes: 10 additions & 45 deletions .github/workflows/phpcbf.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down

0 comments on commit b8ea17b

Please sign in to comment.