mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2025-10-16 12:05:38 +00:00
This simplifies the caching of Composer dependencies in the coding standards and PHP compatibility workflows by using a published action. This combines 3 steps into 1 within these workflows. Because the Composer implementation within the PHPUnit test workflow is a bit specialized (`composer install` is run within the Docker container), caching has been left as is in that workflow. However, the cache key has been changed to include the version of PHP being tested. This will prevent incorrect versions of dependencies being present when they are required on jobs other than PHP 8. Props jrf. See #50401. git-svn-id: https://develop.svn.wordpress.org/trunk@49938 602fd350-edb4-49c9-b593-d223f7449a82
61 lines
1.7 KiB
YAML
61 lines
1.7 KiB
YAML
name: PHP Compatibility
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
# The PHP compatibility testing was introduced in WordPress 5.5.
|
|
- '5.[5-9]'
|
|
- '[6-9].*'
|
|
pull_request:
|
|
|
|
jobs:
|
|
|
|
# Runs PHP compatibility testing.
|
|
#
|
|
# Violations are reported inline with annotations.
|
|
#
|
|
# Performs the following steps:
|
|
# - Checks out the repository.
|
|
# - Sets up PHP.
|
|
# - Logs debug information about the runner container.
|
|
# - Installs Composer dependencies (use cache if possible).
|
|
# - Make Composer packages available globally.
|
|
# - Logs PHP_CodeSniffer debug information.
|
|
# - Runs the PHP compatibility tests.
|
|
# - todo: Configure Slack notifications for failing scans.
|
|
php-comatibility:
|
|
name: Check PHP compatibility
|
|
runs-on: ubuntu-latest
|
|
if: ${{ github.repository == 'WordPress/wordpress-develop' || github.event_name == 'pull_request' }}
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Set up PHP
|
|
uses: shivammathur/setup-php@v2
|
|
with:
|
|
php-version: '7.4'
|
|
coverage: none
|
|
tools: composer, cs2pr
|
|
|
|
- name: Log debug information
|
|
run: |
|
|
php --version
|
|
composer --version
|
|
|
|
- name: Install Composer dependencies
|
|
uses: ramsey/composer-install@v1
|
|
with:
|
|
composer-options: "--no-progress --no-ansi --no-interaction"
|
|
|
|
- name: Make Composer packages available globally
|
|
run: echo "${PWD}/vendor/bin" >> $GITHUB_PATH
|
|
|
|
- name: Log PHPCS debug information
|
|
run: phpcs -i
|
|
|
|
- name: Run PHP compatibility tests
|
|
run: phpcs --standard=phpcompat.xml.dist -q --report=checkstyle | cs2pr
|